Crea la imagen menos compresible

14

"Una imagen vale más que mil palabras", dice el viejo dicho. La palabra promedio tiene aproximadamente cuatro caracteres, por lo que una imagen transmite 4kB de información. Pero, ¿cuánta entropía , en lugar de información, puede transmitir una imagen?

Su tarea es generar una imagen, exactamente de 4,000 bytes de tamaño, con la mayor entropía posible. Puede usar cualquier idioma, biblioteca o formato de imagen que elija, y puede enviarlos a la consola o a un archivo siempre que cargue su imagen aquí.

Puntuación

Su puntaje es la relación de compresión (4000 ÷ tamaño comprimido) cuando su imagen se comprime con GNU tarversión 1.28 y gzipversión 1.6, utilizando el algoritmo DEFLATE y la configuración predeterminada, específicamente, el comando tar -czvf out.tar.gz image. La relación de compresión más pequeña gana.

P púrpura
fuente
1
tarincluye metadatos, incluido mtime, en los archivos de salida de forma predeterminada. Esto afecta el tamaño final del archivo comprimido: algunas veces se comprimen mejor que otras. Cambiar el comando a gzip -n imageharía que el tamaño de salida sea determinista independientemente de mtime (y el nombre del archivo de entrada).
Nnnes
1
No importa, gzip -n imageno puede producir un archivo de más de 4023 bytes con una entrada de 4000 bytes. Necesita 10 bytes para el encabezado, 8 para el pie de página, 1 para el encabezado y relleno del bloque DEFLATE, y 4 para el tamaño del bloque DEFLATE; el resto solo se almacena como bytes sin comprimir. La mayoría de los archivos compuestos por bits aleatorios se almacenan sin comprimir, como deberían ser.
Nnnes
Puedo confirmar eso. En lugar de que la compresión empeore con el aumento de la entropía, solo indica que los datos deben almacenarse sin comprimir. Deflate agrega 2 bytes a los datos. Gzip agrega el resto.
Mark Jeronimus

Respuestas:

4

0.9514747859 (salida de 4204 bytes)

ruido

Nota: la imagen de arriba no es el archivo real que utilicé, pero es la imagen.

Aquí hay un hexdump del archivo: https://gist.github.com/pommicket/cf2982e8ecf09a4de89d3a849526c64b

El archivo está en formato netpbm y se puede generar con este código C:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv) {
    if (argc < 2) {
        fprintf(stderr, "Please pass in seed.\n");
        return EXIT_FAILURE;
    }
    srand(atoi(argv[1]));
    FILE *fp = fopen("image.pgm", "w");
    int width = 2, height = 1993;
    fprintf(fp, "P5 %d %d 255 ", width, height);
    for (int i = 0; i < width * height; i++) {
        fputc(rand() & 0xFF, fp);
    }
    fclose(fp);
    return 0;
}

La semilla aleatoria debe pasarse al programa. Después de probar algunas semillas, obtuve una que produjo un archivo comprimido de 4204 bytes. Como señaló Nnnes, tarincluirá metadatos en el archivo, por lo que sus resultados pueden diferir de los míos.

netpbm no es compatible en todas partes, pero funciona con imagemagick's convert(así que solo debes convert image.pgm image.pngconvertirlo en png).

¿Por qué esta imagen / formato?

Un archivo que consta de bytes completamente aleatorios es muy difícil de comprimir (de hecho, cualquier algoritmo de compresión posible funcionará en promedio, no mejor que no comprimir archivos aleatorios). Al contenido del archivo real le P5 2 1993siguen 3986 bytes aleatorios, por lo que a gzip le resulta tan difícil comprimirlo.

Leo Tenenbaum
fuente
Por alguna razón, no puedo ir más de 4201 en mi clúster. Por curiosidad, ¿cuál fue la semilla que usaste?
Krzysztof Szewczyk
@KrzysztofSzewczyk no se trata de la semilla, se trata del formato de la imagen. Los encabezados de sus PNG incluyen muchos bytes deterministas, por lo que se comprimen fácilmente.
Grimmy
@ Grimy hm, está bien, cambiaré mañana al formato RAW. No esperaba que alrededor de ocho bytes tuvieran un impacto tan grande en la imagen.
Krzysztof Szewczyk
2
@KrzysztofSzewczyk Hay potencialmente mucho más de 8 bytes de datos no aleatorios en un archivo PNG aleatorio . Lo mínimo es incluir la firma del archivo seguido de IHDR, IDATy los IENDfragmentos, pero la mayoría de los generadores PNG incluirán un par de fragmentos opcionales que probablemente se comprimirán bastante bien, como dijo Grimy, excepto tal vez los CRC que se pueden suponer. Sé bastante al azar.
Arnauld
Sí, lo consideraré. Honestamente fui a prueba y error aquí, y es un poco mi error.
Krzysztof Szewczyk
4

Brainfuck, 4201 bytes comprimidos.

El formato de imagen utilizado es PNG. Estoy bastante seguro de que el desafío terminó porque dejo la secuencia de comandos modificada de 4 instancias durante la noche.

Explicación

¿Entonces, cómo funciona?

Usando un programa Java estoy generando un archivo JPG. Luego, se comprime y se está comprobando su tamaño, lo que me solicita que lo conserve. Ejecuté este script por un tiempo y me generó algunos tar.gzarchivos con diferentes tamaños. Luego, después de encontrar un nuevo ganador, se regenera el código Brainfuck.

Script Bash utilizado:

#!/bin/bash

max=0

while true; do

    java Start 
    tar -czf out.tar.gz target.png
    filename="out.tar.gz"
    size="$(wc -c <"$filename")"
    printf "%s/%s " "$size" "$max"

    if [ "$max" -lt "$size" ]; then
        max=$size
        read -p "Keep? " -n 1 -r
        echo
        if [[ $REPLY =~ ^[Yy]$ ]]
        then
            java -jar out.jar out.tar.gz > "out/sub$size.bf"
        fi
    else
        echo "Crappy result, skipping."
    fi
done

Captura de pantalla del programa en ejecución:

texto alternativo

Podría automatizarse por completo eliminando la lectura y manteniéndola implícitamente, pero me gustaría tener control sobre ella.

El código

+++++[->++++++<]>+.-[++>-<]>----.>++++++++.[++>---<]>--.>+++++.>-[--->+<]>--.++++++++++.>+++.>-----[->++++<]>+.-[->++<]>.>-[--->+<]>++.+[-->+<]>++++.[-->+<]>++++.[->++++++++<]>.------.>+++++++.>----[->++++<]>.>-[--->+<]>.[----->++<]>+.+[++>-----<]>.---[->++<]>.-[--->+<]>--.[->+++<]>+.[-->+<]>+++++.---.[-->+<]>----.--[->++<]>.--[-->+++++<]>.+[->++++<]>+.-[->+++<]>-.+[--->+<]>+++++.[--->++<]>++.--[----->+<]>-.+[-->+++<]>-.+[->++<]>+.+[++>-----<]>.[------->+++<]>.++[->++++<]>+.[--->++<]>-.>-[--->+<]>.++++[->++<]>.+++[->++<]>.[++>-----<]>-.-[--->+<]>+.[--->+++++<]>.[->++++<]>--.++[----->+<]>.[->++<]>+.>+[--->++<]>.>+++++++++.[->++++++<]>.[-->+++++<]>+.[----->+<]>.>++++.+++++.>-[--->+<]>----.[->++<]>+.++++++++++.+++++++++.[-->+<]>-.[->+++<]>++.[----->++<]>++.+[->++<]>+.-[->++<]>-.-------.[------->++++<]>.--[--->++<]>--.[->+++++++<]>-.--.+[->++++<]>-.++++[->++<]>.+++[->+++<]>.>--------.--[->+++++<]>.+++++++.-[--->+<]>---.[--->+<]>.[->++<]>+.----[->++<]>.[-->+++++<]>.++[->++<]>.[------>+<]>--.>--.+[----->+<]>.+[--->++++<]>-.-[-->+<]>----.+[--->++++<]>+.--[->+++<]>+.+[->++++<]>.--[-->+++<]>.+[----->++<]>-.[------->+++<]>.[--->++<]>.[++++++>-<]>.+++[-->+++<]>..-[--->++++<]>++.>+++++++++.>----[-->+++<]>-..-[++>-<]>--.>--.---[------->+<]>.>++[++>-<]>+++.>-.[------->++<]>.++..>----.++[----->+<]>+.>-.------[->+++<]>.>-.---[-->+++++<]>.-[->+++++<]>.>+++++++++.[------->+<]>++.-[->+++<]>+.>--[-->+<]>+.++++++++.--[->++++<]>.+[->+++<]>+.++++++++.++++++++.[-->+++++++<]>.[--->++++<]>.----.[----->+<]>--.++.+[->++++<]>.++++++++++++.++++++++++++.----------.>++.+++[------->+<]>.[------->+<]>-.>+.>----[---->+<]>+.++[->++<]>+.>-.-[-->+++<]>.>-[--->+<]>++.>------.[----->++<]>-----.>--[-->+<]>-.[++>-<]>-.--[--->++<]>.[-->+++<]>-.+[-->+<]>+.+++++++++.[-->+<]>.[--->++++++++<]>.+[->++++<]>-.+[-->+<]>++.[++>-<]>.>--.--[---->+++<]>++.------.>--[-->+<]>.----------.>--.[----->+<]>-------.++++[->+++<]>+.-[->+++++<]>+.++[->++++<]>.----[->++++<]>-.+[---->+<]>++.+[--->+<]>.--[->+++<]>.[--->+<]>.>-------.-[->++++<]>-.-[--->+<]>--.[++>-<]>+.++++.--------.>--[----->+<]>.>++++.++[++>-----<]>+.[->+++<]>.>--.>+[----->+<]>.>++++.-[----->+<]>---.---[->++++<]>.-----.----[->++++<]>-.-----[->++<]>.>--[-->+++<]>.-[++>-<]>-.[--->+<]>-.----[->++++<]>.>--[--->+<]>.-.---.-[--->++<]>--.[->+++++<]>.[->++<]>.+++++++++++++++.+[--->++++<]>.--[++>---<]>.>--[-->+++<]>-.+.-[--->++<]>.--[----->++<]>-.>++++[->++++<]>+.-[++>---<]>+.+[->++<]>.--[++++++>-<]>-.-[->++<]>.[--->+<]>+.-[-->+<]>---.[->++++++<]>.-[->++++<]>.--[------>+<]>.-[->++++<]>.--[--->+<]>-.>--[-->+++<]>.[----->++<]>.>+[--->+<]>.+[++>-<]>+.+++[++>---<]>.>+++.-[------->+<]>+++.+++[->+++<]>+.-[->++++<]>+.-[++>-----<]>.---[--->++++<]>.+[--->++++<]>.----.--[->++++++<]>+.-[-->+++<]>+.[->++<]>.--[-->+++++<]>+.>-----------.-[-->+<]>----.+++++++.+[-->+<]>++++.+[--->++++<]>+.[->++++++<]>.[->+++<]>-.++[->+++++<]>.-[-->+<]>.+[->++<]>+.>--------------.++.--[->+++<]>+.----[->+++<]>-.>-[--->+<]>-.-[--->++<]>+.>-[----->+<]>.+[--->+<]>+++.>++.[--->+<]>.--[--->+<]>--.+++[->++<]>.---[->++<]>.-[->++++++<]>+.+[-->+++<]>-.[->++++<]>+.--[----->+<]>-.[->++++++<]>.[++>---<]>+.---[->++++<]>-.[--->++<]>.-----[->++++<]>+.+++++++.>--[-->+++<]>.++.[----->++<]>-.[--->++<]>+.-[-->+<]>------.--[--->+<]>.-[++++>-----<]>.[----->++++<]>+.>+++++++.[----------->+<]>-.++[->++++<]>-.++[->++++<]>-.-[--->+<]>.[-->+++<]>--.+[----->+<]>++.[--->++<]>-.[--->+<]>+++..---[->+++<]>-.+[--->+<]>.-[----->++<]>.[-->+<]>+++.+++++++++.[->++++<]>.[->+++<]>++.++[++>---<]>.++[->++<]>+.----------.--[--->+<]>-.-[--->+<]>---.------.+++[->+++<]>+.>++[++>---<]>.-[++>-<]>---.>+++[->+++++<]>.-[++>---<]>--.[--->++++<]>.++[->++++<]>.>-[--->+<]>++.-[----->+<]>+.+[-->+<]>.[-->+<]>--.++[->++<]>.[----->+<]>++.--[->+++<]>-.--[--->+<]>-.[++>-----<]>++.++++[->++<]>.>++++++++++++++.-[->+++<]>.+[------>+<]>+.[--->++<]>-.++[----->++<]>.[------->+<]>.>++++++++.>+[--->+<]>------.[->+++<]>+.[-------->+<]>-.--[----->+<]>++.-.[++++>---<]>--.-[--->+<]>-.[---------->+<]>.[----->+<]>+.[++>---<]>-.+++.-[->++++++<]>--.+[->++<]>.>++++++.>-[----->+<]>-.---[->+++<]>.>+[--->+<]>+.>---[----->+<]>.>++++++++.>--[--->+<]>.>----[---->+<]>.-[++>---<]>+.>+[--->+<]>++.-[--->++<]>-.+[->++++<]>.--[->+++++<]>.+[->+++++<]>-.[----->+<]>+.-[-->+<]>.[----->+++<]>.-[----->+<]>.+[--->++<]>++.>+++++++++++.+[->++++++<]>-.----[->+++<]>-.-[->++++<]>.[--->++++<]>.[----->+<]>++.>--[-->+<]>+.[++++>---<]>++.[---------->+<]>+.--[->++++<]>-.---[->+++<]>+.+[-->+++<]>.-[-->+++<]>-.>+[------->+<]>.[->++++++<]>.[-->+<]>++.[--->++<]>.--[->+++<]>-.[->+++<]>+.>-------.-[------->++<]>--.+++++[->+++<]>.-[-->+<]>---.[->+++++<]>++.---[++>---<]>.+++[->++++<]>.++[--->++<]>.[++>-<]>+++++.+[------>+<]>++.[++>-<]>---.+[--->++<]>+.>-[--->+<]>.[--->+<]>.+[++>-----<]>+.-[++>-<]>-----.+[->++<]>+.+[-->+++<]>++.-[++>-----<]>+.---[->++<]>-.>--[-->+<]>-.>----------.+[->+++<]>+.--[->++++<]>.---[->+++<]>+.[--------->+<]>.--.--[---->+++<]>+.----[->+++<]>+.-[->++<]>.[++>-<]>++++++.----[->+++<]>.+[->++++++++<]>.+[->+++++<]>+.[++++++>-<]>.>-[----->+<]>.>-[--->+<]>-.[->++<]>+.----[->++<]>.---[->+++++<]>.++++[->++++<]>++.-[----->++<]>.+[->+++<]>+.[--->+++++<]>.--[--->++<]>-.--[->++++<]>-.++[--->++<]>+.+[->++<]>.+++++++.[--->++++<]>+.++++.[----->++<]>+.+[-->+++++<]>+.+[->++<]>+.----------.[----->++<]>-.--[->++<]>.>-[----->+<]>.++[->+++<]>++.>+++++++++.>--[----->+<]>-.--[--->+++++<]>.[--->+<]>.>-----------.[--->++<]>.>---------.>++++++[++>---<]>.[->++++<]>++.+[->++<]>+.-----[->++<]>-.-[-->+<]>-.++.--[->++++++<]>.>-[--->+<]>-----.-[->++<]>-.+[------>+<]>+.>--[-->+++<]>-.-[->++<]>.[------->++<]>.---[->++<]>.---[->++<]>-.>------.>-[--->+<]>+++.[---->+++<]>.++++++++.-[--->+<]>++.++[->++<]>+.[->+++++++<]>.>+[----->+++<]>.++[->+++++<]>+.--[++>---<]>-.+++++++++++++.++[----->+<]>++.[++>-<]>.-[--->+<]>---.-[----->++<]>-.+[-->+<]>.+++++[->+++<]>.[->+++++<]>.+[->++<]>..>--[----->+<]>-.---.++[--->++<]>.-[->++<]>.+[->+++++<]>++.[->+++<]>+.>+++++++++.+[++>-<]>+++.+[----->+<]>.-[->+++++<]>.[--->++++<]>.+[->+++<]>++.[->++++<]>-.-[->++++++<]>-.-[-->+<]>----.-[-->+++++<]>+.+[->++++++<]>+.[->++<]>+.-------.[-->+<]>.++++[->++<]>+.-[-->+++<]>+.-[->+++<]>.>-[--->+<]>.[----->+<]>-.>--------.[->+++++<]>+.-[--->+<]>--.>-[----->+<]>.++++.-[--->++<]>--.[--->++<]>-.-[----->+<]>+.[----->++<]>.>----[-->+++<]>-.--[->++<]>.[----->++<]>++.[++>---<]>+.--[++>---<]>.>++[++>-<]>+.++[-->+++<]>+.[----->++++<]>.[-->+<]>+.>+++.-[----->+<]>+++++.[->+++<]>-.>+++++++++++.>-------[->++++<]>.-----------.--------.-----------.[----->++++<]>.-[->++++++<]>+.-[->+++<]>.---[->+++<]>.[----->++++<]>+.[->++++<]>++.-------------.>+++++++++.+[->+++<]>+.>-------[->+++<]>.+[------->+++<]>.++[->+++++<]>+.[--->++<]>.[-->+<]>++.[----->++++<]>.[---->+<]>++.++[->+++<]>.+[++++++>-<]>-.[---->+<]>---.++[->++<]>.>+++[->+++++<]>.--[->++++++<]>.[++++++>-<]>.>------------.-[----->++<]>.+[->+++++<]>++.+[-->+++<]>+.>--.[----->+<]>------.++[-->+++<]>.------.-[++++>-<]>-.+[--->++<]>+.-[++>-<]>--.-[++>-<]>.-[->++++<]>-.+[++++>-<]>----.>--.+[--->+<]>+++++++++.>+++++++++.[->+++<]>+.++[->+++<]>.[--->+<]>.--[->++++<]>.>--------.-[->++<]>-.---[->+++<]>.[----->+<]>--.>----.-[------->++<]>.[--->++<]>-.>++[++>-<]>+++.[++++>-<]>--.>--.----[->+++++<]>-.>+[--->+<]>++.[--->++<]>---.>--[-->+<]>.-[----->+<]>++.--[-->+++++<]>.-[-->+<]>.>-----[->++++<]>+.[->++++++<]>.++[->+++<]>+.>++[++>-<]>+.>++++++.>+[--->+<]>.+[++>-<]>++.[->++++++<]>-.++[->+++<]>.++[------->+<]>.++++++.+++[->+++<]>++.+[->++++<]>+.---[++>---<]>-.>++++++.>---.>+[--->+<]>++.-[--->+<]>++.[->++++<]>-.+++++++++++++++.>++[++>-<]>+.-[----->+<]>++.+[->+++<]>++.-[->++++++++<]>.---------------.[--->++++<]>.++[->+++<]>+.>--[-->+<]>.+[-->+<]>+++++.>----[-->+++<]>-.-[--->+<]>+++.--[->++<]>-.-[->+++++<]>++.[----->+++<]>.+[->+++<]>.>+[--->++<]>.+[--->++<]>+++.-[----->+<]>+.>-------[->+++<]>.++[->+++<]>+.-[----->++<]>+.[--->+<]>+.--[->++++<]>+.[->++++++++<]>+++.++[->+++<]>.---[->+++<]>+.-[->++<]>-.+[->+++<]>.>-[--->+<]>--.>+[----->+<]>.+[->+++<]>+.[->+++++<]>--.--[----->++++<]>.[---->+<]>.>+[--->+<]>++.>++++.[++++>-<]>++.[->++<]>+.+[----->+<]>.+[----->++<]>+.>----[->++++<]>.[---->+<]>-----.>+++++.>----[-->+++<]>-.[--->++++<]>--.[->++++++<]>.--[->+++++<]>.-----------.-[->++++++<]>.-----------.[--->+<]>.>++[++>-<]>+++.--[----->+<]>+.++[->+++<]>++.+[----->++<]>+.-[->++++<]>-.+[---->+<]>.++[->++<]>.[++>-<]>+++.+[--->++<]>++.-[--->++<]>+.[--->++<]>+++.>----------.--[->+++<]>.>+.[----->+++<]>+.[----->+<]>++.+[----->++<]>.[->++++<]>.----[->++<]>.[-------->+<]>-.------.-[----->+<]>+.[--->++++<]>.>-------------.>++++++++++++++.-[--->+<]>++.-[--->+<]>+++.[--->+<]>---.--[->+++++<]>.[++>---<]>--.--[++>-----<]>+.--[----->+<]>.++[->++<]>.-------.+++[->++++<]>-.+[--->++++<]>-.----[->+++<]>-.[------->+<]>-.---[->++++<]>+.+++[->+++<]>.>---------.[->++<]>-.+++.[---->+<]>---.-[--->+<]>----.+[->++++<]>.-[--->+<]>++++.-[--->++<]>+.++++++++++++.[->++++<]>--.+[->++++<]>++.+++[->++<]>.[++>-<]>+.>---------.++++.+[------->+<]>+.++[------->+<]>.-----[->++<]>-.------[->++<]>.-[->++++<]>.++++++++.-[->++<]>.+[--->++++<]>.++[->++<]>+.[->++++<]>--.--[--->++++<]>.>+++++++++.-[++++>-<]>-.[--->++<]>.[++>---<]>+.-[--->+<]>--.>++++++++.>--[-->+++<]>.-[------>+<]>.++++++++.++[->+++<]>.[->+++++<]>.------[->++++<]>.----[->++<]>.-.--[--->+<]>.-[->++++<]>--.--[--->+<]>.[------>+<]>++.+[--->++++<]>-.+[-->+<]>++.++[----->+++<]>+.>--[-->+++<]>.>-[--->+<]>++.+[->+++++<]>.--.[-->+++++<]>-.-------.[--->+<]>+.[++>-<]>++.>-.[------->++<]>++.[->++++<]>.>+[----->+<]>-.+++++[->+++<]>+.>+[--->+<]>.>-[------->+<]>.>--[--->+<]>.[--->+<]>++++++.>----[---->+<]>-.[----->+<]>-.++[->++<]>+.+[--->++<]>-.-[->++++<]>.---.+[->+++<]>++.>-[--->+<]>--.+++++++++++.[++>-<]>++++.+[++>-<]>+++++.[->+++++<]>-.>+[----->+<]>.[--->++++<]>--.+++++++++++++++.[->++++<]>-.-[++>---<]>-.>+[----->++<]>+.-[--->++<]>.[--->+<]>--.+[--->+<]>+.--[->++++<]>.[++++>-----<]>.[++++>-----<]>.[-->+<]>-----.[->++++++<]>.+[->++<]>+.>--[-->+<]>-.---[->+++<]>-.[---->+<]>+++.+++[->++++<]>.++++++++.[---->+++<]>++.++[->++<]>+.[->+++<]>.+++++.[++++>---<]>-.----.>----------.-[->++<]>.>++++[->++++<]>.---.+++++.--[->+++<]>.[--->++++<]>-.---[->++<]>.[----->+++<]>-.-[--->+<]>---.+[-->+<]>+++.+++++++++++++.--[--->++<]>-.+.-[->++++<]>-.--------------.-[->++++++<]>-.-[--->+<]>+++.--[->+++<]>.-[++++>-<]>+++.++++.>+++[->+++++++<]>.-[--->+<]>++.+.+[------->+<]>++.----[->+++<]>+.+[++>-----<]>+.+[++++>---<]>+.++++[->+++<]>.--------.---[++>---<]>-.---------.>+++++++.[----->+<]>.[->++++<]>++.---[----->++<]>.[-->+<]>-----.++[++>-----<]>-.+++[------>+<]>.++++++.[-->+++++++<]>-.>+[--->+<]>+.[---->+<]>.-[++>---<]>+.>+[----->++<]>.[--->++<]>++.+[->+++<]>.+[++>-<]>+.-[--->+<]>++.+[++>-<]>.++++.>--[-->+<]>-.[------->++<]>.+[----->+<]>.--.---[->+++<]>+.[->++++<]>--.-[----->+<]>--.[->++++<]>-.[->+++++++<]>-.[-->+<]>----.+[->++++++<]>+.----.+[++++>-<]>--.>------.[----->++<]>----.---[->++<]>-.-[++++>-<]>+.+[-------->+<]>--.-[----->+++<]>+.[++>-<]>-.+++.-[-->+<]>----.--[++>-----<]>.-[---->+++++<]>.[----->+<]>++.-[--->+<]>++.[-->+<]>++++.--[->+++++<]>++.>+[--->+<]>.--[--->++<]>--.[->+++<]>+.++++++++++++++++.--[----->+++<]>+.[------->+<]>.[--->++<]>.------------.+++[->++++++<]>-.-[++>---<]>-.++[----->+<]>.>----[-->+++<]>.-[--->+<]>---.>---------.>++++[->++++<]>.++++++.++[->+++<]>.++++++.[----->+++<]>--.[-->+<]>+++++++.++++++++.-[--->++<]>+.[--->++++<]>--.+[----->+<]>-.[->++++++<]>-.>++++++++.>+[--->+<]>-----.[->++<]>-.--[--->++<]>-.>-.[----->++<]>+++.>+++++++++.+[++>---<]>++.[----->++++<]>++.---[----->+<]>-.>----[->++++<]>.>--[-->+<]>-.-----.-.[++>-<]>-.+[++>-<]>+.>+[--->+<]>++.+[++>-<]>+.--.+++++.-[--->++++<]>.---[->++<]>-.>--[----->+<]>-.-[----->+<]>.++[->++<]>+.+++[-->+++<]>+.---------..[---->+<]>--.[-->+++++<]>.---[->++<]>-.+[++++>-<]>+.+[++>-<]>.++[->+++<]>+.++[--->++++<]>+.>+++++++++.+[->++++++++<]>-.-[->+++<]>-.[--->+<]>++.---.>--[----->+<]>.>++[++>-----<]>.>-------.-[------->++<]>--.>++++++.>------[->++++<]>+.++[->+++++++<]>.--[->+++<]>-.[-->+++<]>--.[-->+++++++<]>.+[--->+<]>++.>++[++>-----<]>.+[->++++<]>+.-[++++++>-<]>+.>----[->++++<]>-.>++++[->++++<]>+.---[++>---<]>-.>--[-->+<]>-.++++++.[------->+<]>+++.----------.+.---[->++<]>-.++[->+++<]>.[------->++++<]>.[++>-<]>+++++.-----.[--->++<]>.[--->++<]>++.[->+++++++<]>.+[->++<]>+.[->+++++++<]>.>-------------.-[-->+<]>.+[++>-<]>++.++++++++.++.----[->++++<]>+.++[->++<]>.+[->+++++<]>.+[++>-<]>.[--------->++<]>-.+[++++>-<]>.-[->++++<]>+.++++[->++<]>.[++>-<]>++++++.-[->++<]>.++[++>-----<]>.+[---->+<]>.+++++.-[++>-<]>-----.+[-->+<]>++.>+[--->+<]>++++.[----->+++<]>.--[----->+<]>.-[->++++<]>--.-------.-[----->+<]>.[++>-<]>+++.++[---->+<]>++.---[->++<]>-.-[--->++<]>-.>-----------.[----->+++<]>++.+[++>-<]>++.[--->+<]>--.-[->+++<]>.[->++++<]>++.++[--->++<]>+.-[---->+++<]>-.>-------.+[------->+<]>-.>--[-->+++<]>.++[------->+<]>.---[->+++<]>.+++++++++.-[++++++>-<]>.+[++>-<]>++.[++>-<]>-----.-[------->+<]>.>-.>+[------->++<]>--.--[--->+<]>---.-[->++<]>-.>--[----->+<]>.>--[-->+++<]>.-[++++++>-<]>.+[->+++++++<]>+.++++[->++++<]>.-[->++<]>-.>-------.[->+++<]>++.-[-->+<]>.[->++++<]>+.--[->++++<]>.[------>+<]>+.-[------>+<]>+.[-->+++++<]>.[--->++<]>---.>-[--->+<]>+++.+[----->+<]>+++.-[->++<]>.>++[++>-<]>.++[->+++++<]>.>+[----->+<]>.--[----->++<]>+.+[++>-<]>++.-[->++++<]>+.>-----[->+++<]>.>+++++++++++++.>--------.[---->+<]>---.>++[++>-<]>.--[----->+<]>+.>--[-->+<]>-.----[->+++++<]>+.-[-->+++<]>+.[++>-<]>----.-[->+++<]>.+[->+++++<]>-.+[->++++<]>.>+[--->+<]>++.+[++>-<]>+.-[--->++++<]>-.[->+++++<]>++.>---.[----->+<]>-.-[--->+<]>.++[--->++<]>.[--->+<]>+.[->++++++<]>+.[->+++++<]>-.[--->+<]>+.>+[----->++<]>+.+[->+++++<]>++.+[------->+<]>.[->++++<]>--.+[--->++<]>+.>+[--->+<]>+.[--->+<]>++.[++>---<]>.[--->+++++<]>+.-[->++<]>.++++++++.[++>-<]>++++.-[++>---<]>-.>+[----->+<]>.[--->++++<]>.[--->+<]>-.---[->+++<]>.-[--->++<]>+.[------->+<]>-.+++++.---[->++++<]>+.-[->++<]>.+++[--->++++<]>.>--[-->+++<]>-.[---->+++++<]>.-[--->+<]>---.-[->++<]>.++[->++<]>.>-[--->+<]>.-[----->+<]>.[++>---<]>.---[->++<]>-.+[++>---<]>-.[++++>-<]>-.>----.[------->+<]>.--[->+++<]>-.++[->++<]>.---[->+++<]>-.>-----------.>+[--->+<]>++.[----->+<]>.-[-->+<]>-.+[-->+++<]>++.>++++++++.>-[--->+<]>-.>+[----->+<]>++.>+[--->+<]>+++.++[---->+<]>+.+[-->+<]>+.+[--->++++<]>.[---->+<]>++.+++[-->+++++<]>.>--[-->+<]>-.[++++++>-<]>-.++++.[++>-<]>--.----[->+++<]>.[--->++<]>--.++[++++>-<]>.-[->++<]>.[++>---<]>.-[--->++<]>.---[->+++<]>.++[->+++++<]>.-[--->++++<]>++.[--->++<]>.++[->+++++<]>.[------->++++<]>+.-[---->+<]>++.>--[-->+<]>.>-----------.-[-->+++<]>+.[--->++<]>+.[--->++++<]>.[---->+<]>-.-[----->++<]>.[----->+++<]>.[->++<]>.[++++>-<]>.+++++++.[++++>-<]>-.--[--->++<]>-.>+[--->+<]>+++.[++>-<]>+++.--[->++++<]>.+[->++++<]>-.+[++>---<]>++.---------.>+[----->+<]>-.--[--->++<]>.>++[++>---<]>.+[-->+++++<]>.---[->++<]>.[-->+<]>-.>-[----->+<]>++.-----.---.+[--->++<]>-.--------.-[->++++<]>-.+[----->++<]>-.>-[--->+<]>.-[----->++<]>-.>-[--->+<]>---.[++>-<]>+.>-[----->+<]>---.+++++++++++.+[++++>-<]>.+++[------>+<]>+.++++[->+++<]>.[--->+<]>--.-[--->+<]>.>---------.>+++.>-------[->+++<]>-.[-->+<]>++++.[->+++++<]>.[->++++++++++<]>.----[->+++<]>.[--->++++<]>--.++[-->+++<]>.+[--->+<]>.[->+++++++++<]>.-----------.[++++>-<]>.>------.--[--->+<]>.>+++++++.+[----->++++<]>.+[->++++<]>.>--[----->+<]>.>+++++++.>--[--->+<]>.+[--->+<]>++.+[++++>-<]>.++++[->+++<]>+.--[--->++++<]>-.-[->++<]>.+[--->+<]>+.++++[->++<]>.[------->++<]>++.[-->+<]>-.++[->++++<]>++.+[->+++++++<]>-.[->++++<]>+.++++++++.+++[-->+++<]>+.>+[--->+<]>+.[++>-<]>+++.--------.-[++>-----<]>-.>+++++++.++[------->+<]>.-[-->+++++<]>-.[------->+<]>++.[++>-<]>+.++[--->++<]>+.-[----->+<]>++.-[->++++<]>.-----.-[->++++++<]>-.[--->++<]>+.--------.---[->++++<]>+.[->+++++<]>+.-----.+[->+++<]>+.>----.[--->+<]>++++++++++.---[----->+++<]>.------------.++[->++<]>.[++>-<]>-----.>++++++++++++.[++>-----<]>+.-[++++++>-<]>-.+++++++++++.+[--->++<]>+.++[--->++<]>.[----->++<]>.[---->+<]>--.+[->+++<]>.[++++++>-<]>+.[----->+<]>.---[-->+++<]>.>---------.>--[-->+<]>.-----------.>+[--->+<]>--.-[--->+<]>++++.[++>---<]>++.+++[->+++++<]>.>-----------.+[--->++++<]>.+[----->+<]>-.+++++.[->++++<]>.--[->+++<]>-.+++++++++++.+[->++++<]>.[--->++++<]>-.+[->+++<]>++.+[----->+++<]>-.>++++[--->+++++<]>.[------->+++<]>-.>+++.+[->+++++<]>.+[->+++<]>.-[++>---<]>+.--[--->+<]>-.>++++++[++>---<]>.[->++++<]>-.>--.[------->+++<]>.[--->++<]>.[++>-<]>+.>+[--->+<]>.>----------.-[--->+++++<]>+.>------------.-[----->+<]>++.-.-[->+++++<]>.--[->++<]>.+[--->++<]>++.-----[->+++<]>.-[----->++<]>.[++>-<]>+++.++[->+++<]>.--[--->+<]>.----[->++<]>.>++++[++>---<]>.[++>-<]>--.>-[----->+<]>++.+.-----[->+++<]>-.>++[++>-<]>+.++[->++++<]>.[++++>-----<]>.+[->+++++<]>++.+[----->+<]>.[-->+<]>+++.--[->++<]>-.+++++++++++++.>++.>-[----->+<]>.[--->++<]>+.+[++>-<]>.>++++++.--[++++>-<]>---.--[++++>-<]>.+++++.-[->++++<]>+.+++++++++++++.>++++++.>+[--->+<]>---.---[->+++<]>-.------.>++++++++.-[->++++<]>+.[--->++<]>--.------.>++++.[++++>-<]>---.>++++.[->++++++++<]>+.[----->++<]>+++.---[->++++<]>-.+[--->++++<]>-.+[----->+<]>-.[--->++<]>--.>++++++++++.[++++++>-<]>.-[->++<]>-.+[---->+<]>.-[++>-----<]>++.-.++[->++<]>+.++[->+++<]>.-[--->+<]>++.[++++++>-<]>++.+[++>-<]>+++.>-[----->+<]>--.-[-->+<]>---.----.--[->++<]>.--[->++<]>.-[->+++<]>+.+++++++.+[->++<]>.>--.>+++.+[->+++++<]>.++[->++++<]>.[->++<]>.+[--->++<]>.[++>---<]>-.-[----->+<]>+.------.--[---->+<]>-.[++>-<]>-.[++>---<]>-.[->++++<]>++.[->+++++++<]>.-[------->+++<]>.---[->++++<]>+.[------->+<]>.----------.--.----[->++<]>.[--->+<]>+.>+++.+[--->++<]>.+++[->++<]>.--[++++>-<]>-.>++++[->++++<]>.>-------------.[--->++<]>--.[----->+<]>+++.-[----->++++<]>+.+[--->++<]>.[->+++++<]>+.[->+++++<]>--.-[++>---<]>--.++[->++<]>.[-->+<]>----.+[->+++<]>++.--[->+++<]>+.---.-[--->++<]>+.-[----->+<]>.-[->+++++<]>+.[----->+<]>--.+[--->++<]>.------------.+++[->+++<]>.--[--->++<]>.[->+++<]>-.--[--->+<]>----.[->+++<]>.+[-->+<]>+.[--->++<]>++++.>+[--->+<]>.>+[----->++<]>+.-[--->+<]>+.-[++>---<]>.++++++++++.>---------.+[--->++++<]>--.++[----->+<]>.-----[->++<]>-.-[--->++++<]>-.+[-->+++<]>-.-[--->+<]>++.---[->++<]>-.[->+++<]>++.-[++>-<]>.----[->++++<]>.[--->++<]>--.[->++++++<]>++.--[->+++<]>+.>++++++++++++++.++[->++<]>.>++[++>-<]>+.++[++++>-<]>.-[--->++<]>--.+.[->+++<]>-.[-->+++++<]>+.-[++>-<]>--.>++++++.--[++++>-<]>-----.>---.>+++[->+++++++<]>.+[--->+<]>+++.--[->++<]>-.>++++.>-----.+[---->+++++<]>.-[->+++++<]>++.>--------------.+++++++.[--->+++++++<]>-.++[-->+++<]>.[----->+<]>.>++++.>----[-->+++<]>-.++++++++++.-[++++++>-<]>++.--[->+++<]>+.>--.[--->+<]>--------.-[--->+<]>.------.>------.-[--->+++++<]>-.--------.[-->+<]>------.-[++>-----<]>.-[->++++<]>-.>--[-->+++<]>-.>+++++.+++[------>+<]>.[-->+<]>--.++[++>---<]>++.[--->+<]>--.-[--->++<]>+.[--->+++++<]>.-[++>-<]>-.[---->+<]>-.>-[--->+<]>++++.+++++.[->++++<]>++.-[->+++<]>+.[-->+<]>--.--[->++<]>.--[--->++<]>-.[->+++++<]>--.+++[->++<]>.[--->++++<]>+.+++++[++>---<]>.[--->++<]>----.>---[----->+<]>.--[--->+<]>.>----------.--------.++[---->+<]>+.+[->+++<]>+.-[->+++++<]>.-[--->+<]>.-[->+++<]>.[--->++<]>.>------.[------->+<]>---.+[--->+<]>++++.[---->+<]>+.>++[++>-<]>+.[--->+<]>-----.-[-->+<]>-----.+[->+++++<]>.[----->++++<]>.[---->+++<]>++++.[->+++++<]>-.--[->++++<]>.[-->+<]>.++[--->++<]>+++.[----->+++<]>+.++[->+++<]>.[--->++<]>.[++>-------<]>-.>++[++>---<]>.-[----->++<]>+.-[-->+++<]>+.>+[--->+<]>++++++.+[->+++<]>++.>-[--->+<]>--.--[->+++++<]>-.>--[-->+++++<]>.+++++++++++++++.----[->++<]>.[++>-<]>++.+++[->+++<]>.--[->++<]>.[--->++++<]>.[++++>-<]>-.>+++++++.-[++>-----<]>++.-[----->+<]>.>+[----->+<]>+.++[->+++++<]>-.++[--->++<]>.++[---->+<]>+.-[->+++++<]>.+[------->+<]>-.>+[----->+<]>+.>++.-[----->+<]>++++.[--->+<]>----.[--->++<]>.--[->+++<]>.-----------.+[->+++++<]>.[--->++<]>-.+[->+++++<]>.-------.-[->+++<]>-.+[++++>-<]>++.-[--->+<]>+.++.---.>-[----->+<]>-.+++[->+++<]>+.>+++++++++.>-----.+[---->+++<]>-.[----->+<]>-.>------[-->+++<]>.+[-->+<]>++++.[-->+++<]>-.--------.[--->++<]>----.>----.[----->+++<]>----.-[->+++<]>.-[--->+<]>--.+++++++++++.-[++++>-<]>.--[->++++<]>.[--->++<]>.+[->++<]>.-[->+++++<]>.-[++>---<]>+.+[-->+++<]>-.+[--->+<]>.+[--->++<]>+.+[--->++<]>+.+++++[->++<]>+.>++[++>-<]>+.++[-->+++<]>++.[-->+<]>+++++.>++++[++++>-<]>.+[----->+<]>-.++[----->+++<]>.-[-->+<]>------.[---->+++<]>.[-->+++++<]>+.[->+++<]>+.-[++++>---<]>+.-[->+++<]>+.>+[--->+<]>+++.[++>-----<]>+.[------>+<]>-.+[->++<]>+.-[-->+<]>-.---[->++<]>-.++++.[->++++++<]>-.>+[--->+<]>+.+[->+++++<]>.+++++++.[------->+<]>+.++++++++++.++++[->++++<]>+.+[++>-<]>.>++++.[++++>-----<]>.+[-->+<]>+++.>+[--->+<]>--.---[++>---<]>.++.[--->+<]>+.++.>-------------.[--->++++<]>--.-[->+++<]>.+[++>---<]>-.-[--->++++<]>+.[->+++++<]>.>++++++++++.---.+[++>-<]>.-[----->++<]>+.[->++++<]>-.+[++>---<]>+.>++++[->++++<]>+.--[->+++<]>-.[->++<]>+.++[--->++<]>+++.>------------.[-->+<]>+++.+++++.++.[++>-<]>---.+[++>---<]>-.-[--->+++++<]>-.-[++>-<]>--.-[->++++<]>-.-[------>+<]>.>++++++.>------[->+++<]>.++[-->+++<]>+.>++[++>-<]>.-[++>-<]>---.-[--->+<]>+++.[------->+++<]>.--[--->+<]>.---[->+++<]>.>++++.>-------.>--[------->+<]>.++[++++>-<]>+.--[->++++<]>--.--[++++>-<]>---.[--->++<]>+.-[++++>---<]>+.>++[++>-----<]>.-[----->+<]>-.+++++++++++.[-->+<]>-.[++++++++++>-<]>.+[--->++<]>-.+[----->++++<]>.-------.-[++>---<]>-.-[--->+<]>+.+[++>-<]>.++[------>+<]>++.++++++++.+[-->+<]>.------.-----[->++<]>.++[->++++++<]>.--[->+++<]>.[------->+<]>+.>--------.>+++++++++++++.[->+++++<]>-.[-->+++<]>.+[->+++<]>++.[--->++++<]>.+++[->+++++<]>+.[++>-<]>+.>-[--->+<]>----.>++++++.[->++++++<]>+.>--[-->+<]>.>------.[----->+<]>-----.[->+++<]>.+[-->+++<]>++.--[++>---<]>-.[->+++<]>++.>++[++>-<]>+.----.--[++++>-<]>-.+[->++<]>.++[---->+<]>.--[->+++<]>+.[--->+<]>+.++++++[->++<]>.>+[----->+++<]>.+[----->+<]>++.--[--->++<]>.[-->+++<]>+.--[->++<]>.>----.[--->+<]>---.>++[++>-<]>.[--->+<]>+++.[++>-<]>-.-[--->+<]>++.+++++++++.+++[->+++<]>++.-[++++>-<]>-.[->++++++<]>+.-[--->++<]>-.-[++>---<]>+.+++++++.--[->++<]>-.--[->++++<]>.[------->+<]>.-------.[->++++<]>+.-[----->+++<]>.+++[->+++++<]>.>+++++++++++.--[----->++<]>+.+[->+++<]>+.+[-->+<]>++.+[++>-<]>+++.>+.>------[->+++++<]>.[--->+++++<]>.---[----->++<]>.>------------.+++.[----->+++++++<]>.>------.-[----->+<]>+.-[--->+<]>.---[->+++<]>.[++>---<]>.[--->+++++<]>.-[--->++<]>--.>++++++++++++++.++[--->++++<]>.[++>-<]>++.>++++[->+++++<]>.>-----[->++++<]>.+++[->++<]>.-[->+++<]>+.[++>-<]>++++.[--->++<]>.>++++++++++.+[->++++++<]>++.>------.>+[----->+<]>.-[----->+++<]>.-[--->+<]>+.--[++>---<]>.++++.[++>-<]>+.+[++>-<]>+.-[---->+<]>++++.[->+++<]>.[->++++++<]>-.[--->+<]>---.++++[->+++<]>+.-[--->+<]>.-[->++<]>-.++[->++<]>+.+[++++++++>-<]>.>+++[->++++++<]>.--[++++++++>-<]>.-[->+++++<]>-.-.+[->++<]>.-.--[->++++++<]>+.++[--->++++<]>.---[->++++<]>.[++++++>-<]>+++.+[->++++<]>-.-[++>---<]>+.[-->+++++++<]>.[--->++++<]>--.-.-----[->++<]>-.+++++++.>---.>+[--->+<]>+++++.+++[->+++<]>++.>--.----[->+++<]>.--[->++++<]>+.>-----------.[--->+<]>-.++[++>-----<]>.--[++>---<]>--.-[->++<]>.[-->+<]>+++.+[--->++<]>+++.-[----->+<]>.[------>+<]>.-[-->+<]>---.[-->+<]>-.[--->++<]>.++[->++<]>.---------.+[->++<]>.--[--->+<]>.++++++++++.[--->++<]>-.+[->++++<]>++.+++[->+++<]>+.+[->++++<]>+.[--->++<]>--.--[->+++++<]>+.-[--->++<]>--.[-->+<]>---.>+[--->+<]>++.+[++++++>-<]>+.[-->+<]>------.>--[-->+++<]>-.[++>---<]>-.[----->++++<]>+.-[++++>-<]>+.>+[----->+++<]>.+[++>---<]>++.+[----->+<]>+++.----[->++<]>.+[--->+<]>++.-[->++<]>.[--->++<]>--.[->++<]>-.[--->++++<]>-.++[----->+<]>.>----------.+[------->+<]>.+++++++++++.[++>-<]>---.>-[--->+<]>----.-[->++++<]>.>+[--->+<]>---.[--->++++<]>-.-----[->+++<]>.[++>-<]>++.+[->++<]>.>-[--->+<]>++.-----[->++<]>.>++++[->++++<]>+.-[->+++<]>+.---[->+++<]>-.+++[->++<]>+.+[--->++<]>.--[--->+<]>-.--[->+++<]>.>-[--->+<]>----.[->++++<]>.++++++.----[->++<]>-.[->++++<]>--.++[++>---<]>+.--[--->+<]>--.[->+++<]>+.-[->+++<]>.[--->+<]>++.-[-->+<]>-.-[->++++++<]>+.+[++++++>-<]>.+++++++.-------.-[-->+<]>--.--[--->+<]>--.+++++++++++.-[--->+<]>+.+[--->+<]>+.-----[->++++<]>-.-[->+++++++++<]>.[->+++<]>+.-[--->+<]>+++.-----.-------.>++++++++.>--[-->+<]>.[--->+<]>--.+[++>-----<]>+.>-------.---[------>+<]>.[------->+++<]>.[->++++++<]>-.>+[--->+<]>+.+++++++++.[->+++++<]>-.[---->+++<]>-.[----->+<]>.+[-->+<]>+++++.>----.>+[--->+<]>+++++++.>----.+[----->+<]>.>+[--->+<]>+.[--->+<]>+.---[->++<]>-.---------.+[--->+<]>+.[-->+<]>--.++[--->++<]>+.-[--->++++<]>++.>++++[++++>-<]>-.>--[----->+<]>++.[++++++>-<]>.[------>+<]>---.>--[-->+<]>+.-[----->+<]>.+[--->+<]>+.[----->++++<]>.[---->+<]>+.++[++++>-<]>.++++++++++.++[->++<]>+.+++++++++++++.+[--------->+<]>.+[--->+<]>+++++.+++.[->++<]>+.[->++++<]>-.+[++++>-----<]>.-[++++++>-<]>.--[->+++<]>.[----->+<]>--.+[->++++<]>-.--------.+++++[->+++<]>+.[--->++<]>.-[--->+<]>+.[---->+++<]>.++[---->+<]>+.--[--->+++++<]>+.-[--->++<]>.>+[----->+++<]>.++[->++++<]>+.-[->++++<]>.[->+++<]>++.++[---->+<]>+++.[----->+<]>.[++>-----<]>.++[------->+<]>.++++++++.[->++++<]>++.>-[--->+<]>++.++[->+++<]>.>--[----->+<]>.>-.[----------->+<]>.--[->+++++<]>-.++[++>-----<]>.--[++++++>-<]>-.++++[->++<]>.-[--->++++<]>+.>+[----->+++<]>.---[++++++>-<]>.>--.[----->+<]>--.++++[->+++<]>+.++++++++++..[->+++++++++<]>.-[--->++++<]>.[-->+++<]>--.++++++++++.[--->+<]>.--[->+++<]>-.+[-->+++<]>-.-[->+++++<]>-.[++>---<]>--.>+++++++++++++.--[--->++++<]>-.-[----->+<]>+.-[->+++++<]>.-[->++++++<]>.--[------>+<]>.-----[->+++<]>.[->++++<]>++.[++>-<]>+++.-[--->+<]>-.-[--->++<]>-.>--[++++++>-<]>.---[++>---<]>--.>+++++++++++++.[->+++<]>-.++[->++++<]>.+[->++++<]>+.[->+++<]>++.-[++>-<]>----.[++>-----<]>+.[->+++<]>++.+[->++++++<]>+.>++[++>-<]>.[--->+<]>++.--[----->+<]>.+[--->+<]>+++.[--->++<]>.-[->+++++<]>--.>--[-->+<]>.>+++.[----->+<]>++.>---.-[-->+<]>-.+[--->+<]>++.[-->+++<]>-.-[++>---<]>-.------------.-[->++++<]>.--[++>---<]>.>----.[--->+<]>+++.++++++++++.>----.[---->+++<]>++.--[->+++<]>.-[->++++<]>.>++.>---------.+[----->+<]>+.-[--->+<]>+++.+++++++.++[->+++<]>+.[->++++<]>.>++++[++>---<]>+.[--->+++++++<]>.++[->++<]>.-[--->++++<]>.>---.[----->++<]>.>++[++>-<]>+.[-->+<]>--.>+[--->+<]>+++.+.+++[->+++<]>.-[----->+<]>++.>++++++++++.>--------------.>+++++++.+[++>---------<]>.[++++>-------<]>.+[------->+<]>--.-[--->++<]>+.++++++++.---[->++++<]>-.+++.--[->++++<]>+.>+++++.>-------------.[--->++++<]>+.+[->+++<]>++.[-->+++<]>.[-->+++++<]>-.+++++++++.+[--->++<]>-.++[------->+<]>.[->++++++<]>+.+[-->+++++<]>--.++++++++++++.+[->+++<]>.++[----->+<]>.++[->++<]>.-[--->+<]>+.>-[--->+<]>-.++++++++++++.++[->++++++<]>+.[->+++++++++<]>-.+[->+++<]>++.+++.>+[----->+<]>+.++++++++++++.>++.[---------->+<]>+.++[-->+++<]>+.>++++++++++++.+++++++++.++[--->++<]>++.--[->+++++<]>+.++[->++++<]>-.-[----->++<]>--.----------.++++++++++++.[-->+++<]>++..-[----->++<]>.---[->+++<]>.+[--->++<]>++.---[->++++<]>.---[->+++<]>+.++[++>---<]>+.[------->+<]>.+[--->++<]>.[++++++>-<]>+.-[->++<]>-.+[->++<]>+.+[----->+<]>++.-[--->++<]>-.+++++++.-[--->+<]>++++.+[--->+<]>.-[--->+<]>++.-[-->+<]>----.--[------->+++<]>.[--->++<]>+++.+[----->++<]>--.>-----.+[-->+++<]>-.-[--->+<]>---.++++++++.>+[--->+<]>++.[--->+<]>+++++++.>+[--->+<]>----.+[--->+<]>+++.---.[-->+++++<]>--..++[->+++<]>+.+[++>-<]>++++.-[++>-<]>---.>+++.[----->+<]>--.>-[--->+<]>.++.++[--->++<]>+++.>+[--->+<]>.[--->++<]>+++.[->++++<]>+.-[->+++<]>+.-[---->+<]>+.[--->++<]>---.-[->++++++<]>++.[----->+<]>+++.+[->+++<]>+.--[--->++<]>.+[->+++++<]>.>++++[++++>-<]>.+[++>-<]>++.+++[->+++<]>++.+[->+++++<]>+.>-[--->+<]>++.++[----->++<]>.>----[-->+++++<]>.--[---->+++++<]>.+[-->+<]>+++.[--->++<]>-.-[->++++<]>+.+++++++++++.[-->+<]>+.>+++++++.++++++.---[++>---<]>-.[++>-------<]>+.++[->++<]>.+[->+++<]>++.++++.------------.>+++++++++.[->+++++<]>++.+[->++++<]>-.>-[--->+<]>--.+[++++>-<]>--.-[++>---<]>.+[++>---<]>+.-[-->+++<]>.>+++++++++.+[->++++<]>+.>---------.+[---->+++++<]>+.+[-->+++<]>.++++++[->++<]>+.-[-->+<]>---.>--[-->+<]>-.+++++[->+++++<]>.---[->+++<]>.[--->+<]>+.+++[->++<]>+.[----->+<]>+.>+++[->+++++<]>.++[----->+<]>+.>--[-->+<]>-.--[++>---<]>-.+[-->+++<]>.-[------->+<]>.>+[--->+<]>+++.[++>-<]>-----.-[--->+<]>++.+[->+++++<]>+.+[++>-<]>+++++.++[->+++<]>+.-[----->++<]>+.[--->++<]>+.[--->++++<]>--.>--[--->+<]>.++[----->+<]>.[------>+<]>-.-[++>-<]>---.[----->++++<]>.[-->+++++<]>.-[--->+<]>+.--[->+++<]>+.--[->++<]>-.[->++++<]>-.-------.--[-->+++++<]>-.-[->+++++<]>++.>++[++>-<]>+++.--[++++++>-<]>-.-[->+++<]>+.++[->++<]>+.+[--->++<]>-.--[----->++<]>+.+[-->+<]>.++[----->+<]>+.[->++++++<]>+.>++++++++++++.-[--->+<]>--.>-[----->+<]>.--------.+[-->+++<]>-.--[----->+<]>+.>++[++>-<]>+++.>-[----->+<]>.--.--[->+++++<]>.++[->+++<]>++.++++++++.++++++.--------------.++++.[--->++<]>+++.[--->++<]>---.-----[->++<]>-.--[------->+<]>.[----->++<]>-.[----->+<]>+.[->++<]>-.+[---->+<]>+.++[++++>-<]>+.>+[--->+<]>++.+[-->+<]>.+++.--[----->++<]>-.-[-->+++<]>.[--->+<]>--.+[++>---<]>+.--[----->+<]>++.>+++++++..>-------[->++++<]>.[++>---<]>--.[--->+<]>----.---[->++<]>-.-[->+++<]>-.+[-->+++<]>-.--[->++++<]>.>-------.[--->++<]>-.[--->++++<]>.---[->++++++<]>.-[----->+<]>-.[-->+++<]>-.+[---->+<]>+.+++++++++.+++[->++<]>.>--------.[----->+<]>----.+[--->+<]>+.[++++++>-<]>-.>--[--->+<]>.>++[++>-<]>.--[----->+<]>-.+++++.-[->+++<]>+.>++++++++++.>++.[----->+<]>++++.+++[->+++<]>.++++++++.+++.[------->+<]>++.-[--->+<]>--.+++[->++<]>.>--[-->+++<]>.--[->+++++<]>+.[--->+<]>+.---[-->+++<]>-.-[--->++<]>.++[--->++<]>+.-[++>---<]>+.-[++>-<]>.>--[-->+<]>.+++++[-->+++<]>.--[->+++<]>-.-[-->+<]>----.--[->++++<]>--.--[------>+<]>-.++[----->+<]>+.+[->++<]>+.-[->+++<]>+.>-----.+[------>+<]>-.+[-->+<]>+.[++>-<]>++++++.----.-[++++>-<]>+.[--->++++<]>-.+[->++<]>.--[->++++<]>+.--[->+++<]>-.-[----->+<]>+.-[--->+<]>.[------->+<]>-.[++>-----<]>+.+[--->++<]>+.+[-->+<]>.-[--->+<]>++.>--.--[->++++<]>.[---->+<]>-----.-[++>---<]>.>+[--->+<]>+.[---->+<]>-----.[++>-<]>+++.[++>---<]>--.-----------.>++++[++++>-<]>-.[++>-<]>++.>-[--->+<]>++.---[-->+++++<]>.-------.>--[-->+++<]>.---[->+++<]>.[++>-<]>++.>--------.--[-->+++<]>--.+[---->+<]>+.-[++>---<]>-.-[--->++<]>-----.>----------.[------->++<]>+.-[---->+<]>++.-[-->+<]>--..-[--->++++<]>+.++++[->++<]>+.--[----->++<]>.--[->+++<]>.[-------->+<]>.+[--->+<]>+.[------->+++<]>.-[-->+<]>----.[--->+<]>-----.+[->+++<]>+.+[-->+++++<]>+.>+[--->+<]>++.+.--[---->+<]>---.---[->++<]>.---.>+[--->+<]>+++.[-->+<]>---.>+[----->+++<]>.-[--->++<]>.>-------.-[---->+<]>----.>-[--->+<]>.-----[->+++<]>-.-[->++++<]>-.[--->+<]>------.-----[->+++<]>.>++++++++++.[--->++++<]>+++.>++[++>-<]>+++.>+[--->++<]>.>+[----->+<]>.[--->+<]>--.+[->++<]>.+++++[->++<]>+.>++++++++++.[--------->++<]>+.>++++[++++>-<]>.-----[->++<]>-.---[->+++++<]>.-----.+[->++<]>+.>++++++.>--[++++++>-<]>-.++[-->+++<]>+.-----------.[--->+<]>+++.[-->+<]>++.--[++>---<]>-.>-------------.[->++++<]>--.++++[->++<]>.[--->++<]>.[++++>-<]>++.[++>---<]>--.-------.[--->+<]>---.[---->+<]>--.++++++.---[->+++<]>-.+++[->++<]>.---------.-[->++++<]>.+[--->++++<]>+.-[->+++<]>.--[->++<]>-.-[------->+<]>.--[->++++<]>.++[--->++++<]>-.+[-->+++++<]>.>--[------->+<]>-.-[++++>-<]>--.[->+++++<]>-.>++++.>------[-->+++<]>.[----->+<]>++.+++++++++++++++.--------.>----------.-[->+++++++<]>.-[--->+<]>++.>+[--->+<]>++.-[--->++<]>-.++[->++++<]>+.[--->++++<]>-.--[->++++++<]>++.-[----->+<]>.[->++<]>+.+[++>-<]>.--[->+++<]>+.[------->+<]>.+.+++[->++<]>.+.[----->+++<]>-.[->++++++<]>+.[----->+<]>+++.+++[->++<]>+.[----->+++<]>.-[---->+<]>.[++>-<]>----.[---->+++<]>+++.--[->++++++<]>.>----[-->+++<]>-.[->+++++<]>-.-[->+++++<]>--.>----[-->+++<]>.++++++++++++++.+++.---[->+++<]>.-[----->+<]>.[->+++++++++<]>.-[--->++<]>--.[->+++<]>.----[->+++++<]>.>----.[---->+++++<]>.>+[----->+<]>--.-[--->++++<]>+.-[-->+++<]>+.-[------->+++<]>-.[--->++++<]>.++[->+++++<]>+.+[----->+<]>+.--.-[-->+<]>.---[++>---<]>.+[--->+<]>++.--[--->++++<]>+.[------->+<]>+.[---->+<]>--.>+[----->++<]>.+[->++<]>.[++>---<]>-.>++++++++++.>+[----->+<]>-.[------>+<]>+.[->++++++<]>-.[->+++<]>-.[--->+<]>+++.>-----.>++++++[++>---<]>.>++++.[----->+++<]>++++.[---->+++<]>.--.-----[->++<]>.--[----->+<]>--.--[->++++<]>--.>+++.>+[--->+<]>-----.>++++.>-----[->++++<]>+.+[-->+++<]>-.-[--->++<]>.-[--->+<]>--.---------.--[->++<]>-.+[->+++<]>+.>--[-->+<]>-.---[->++++<]>-.---[->++<]>.[----->+<]>+.+[----->+++<]>.++[++>---<]>.----[->++<]>.[++++>-<]>.++++[--->++++<]>.----------.[++>-<]>.>------.[->+++++++<]>.>+++[->+++++<]>.-[++>-----<]>++.++[--->++<]>.[->++++++<]>.++++++++.[--->++<]>.>++[++>-<]>+.-[--------->+<]>.[->+++++++<]>+.+[----->++++<]>.[->+++++<]>.[++>-<]>-----.>++++.[----->++<]>++.--[---->+++<]>+.+[--->++++<]>-.---[->++<]>-.+[-->+<]>++.[++>-<]>++.[--->++++<]>.[->++<]>.>--.--[-->+++++++<]>+.--[->++++<]>--.----.>+[----->+<]>++.[--->++<]>++.-----.+++++++.>----[-->+++++<]>.-[--->+<]>++.-[--->++++<]>+.+[-->+++<]>.-----.+[--->+++++<]>.-[++>---<]>-.--------.--[->++<]>.[++>-<]>+++.[-->+<]>--.[->++++++<]>-.[--->++<]>.-----.+++[++>---<]>.>--.--[---->+<]>+++++.[--->+<]>--.>+[--->+<]>.>-[----->+<]>--.----[->++++<]>+.-[-->+++<]>-.[->+++<]>+.[-->+<]>--.[->++<]>-.[--->++<]>---.-----[-->+++<]>.[----->+<]>+.[->++<]>.++[++>---<]>++.>----.[->++++++++<]>-.[----->++<]>-.-----[->++<]>.>+[--->+<]>.+++++.>-[--->+<]>-.++++[->++<]>+.-[---->+<]>+++.+[->+++++<]>-.-[-->+<]>------.>++[++>-----<]>.[->++++<]>+.-[++>-<]>--.[--->+<]>+.++[->++<]>+.-[-->+++++<]>.[--->++++<]>.>-[--->+<]>---.>+++.+[->++++<]>+.>----[->++++<]>.[->+++<]>-.[--->+<]>++++++.++[->++<]>.[--->+<]>-.----------.+++[->++++<]>+.--[--->+<]>---.-----.>-----.>+[--------->+<]>.+++[->++<]>.+[->+++++<]>.>++[++>-<]>.>+[------->+<]>-.+[->+++<]>+.-[----->+<]>+.--[---->+<]>-.----[->+++<]>+.----.[++>-<]>.-[++>---<]>+.[----->++<]>-.>+++++++++.[->+++<]>++.+[-->+++<]>+.[-->+++<]>-.-[----->+<]>.[------->+<]>-.++[-->+++<]>.++[->+++<]>.[------->+<]>.-[------->++<]>++.[-->+<]>++++.-[--->++++<]>.++++++.++[----->+<]>.[++++++++++>-<]>-.>+++++++.-[++>---<]>+.++++[->++<]>.>+[----->+<]>-.----------.[-->+<]>-.---[->++<]>-.[->+++++<]>++.+++++++++++.>--.[++++++>-<]>----.-[----->+<]>-.>-----.+[---->+<]>+++++.>+++++++++++.-[--->+<]>+.+++++.+[--->++++<]>-.>-----------.[------->+<]>-.[----->+<]>+.[--->+<]>.-[-->+<]>-.>+[--->+<]>.>--[-->+<]>+.----[-->+++<]>-.-[---->+++<]>-.>----[-->+++<]>.[->++<]>-.[--->++++<]>--.>------------.-[->+++++<]>--.+++++++++++++.[--->++<]>---.>-[--->+<]>-.---[----->+<]>--.+[----->+<]>+.+[++>-<]>++++.[----->+<]>.[->+++<]>.-[-->+++<]>+.>+++++++++++.>----[---->+<]>.-[++>-<]>--.>+++++++.[----->++++++<]>.[------>+<]>+.+++++++++++.[->+++<]>++.++++++++++++.>-[--->+<]>--.>++++++++++.>-------------.[->++<]>.-[------->+++<]>+.[++>-<]>++++.--[->+++<]>+.-----------.-[------>+<]>++.+[++>---<]>.+[--->++<]>+.--[--->++<]>---.-[-->+<]>----.[----->++<]>.-[->++++<]>-.++[->++<]>+.-[--->++<]>-.---[->++<]>-.++++++.+[++>-<]>.-----[->+++<]>.--[-->+++<]>--.[++++++>-<]>+.-[--->++<]>+.+[---->+<]>++.++[---->+<]>.+[->++++++<]>.-[--->++++<]>--.+++++++++++++++.[--->++<]>++.[->+++<]>-.+[++++>---<]>+.----.++[->+++<]>.>--------.[->++++<]>.+[->++++<]>+.>+.+[----->++<]>.--[->++++<]>.---[->++++<]>.--[++>-------<]>.[--->++<]>-.[----->+<]>.+[--->++<]>+.[----->+++<]>-.++[------->+<]>.-[->++++<]>.---[->+++<]>.+[-->+++++<]>.[++>-<]>++++.[----->+++<]>.---[->++<]>.[->++++<]>--.+[----->+<]>+.[->++<]>+.>--[----->+<]>.---[->++<]>-.>-[----->+<]>.-[-->+<]>--.-[--->++++<]>++.[->++++<]>++.--[++>---<]>.[++>-<]>--.++[++>---<]>.--[->++<]>-.-[++++>---<]>.>-[--->+<]>--.----[->++++<]>+.-[++>---<]>.[--->++<]>+++.-----------.[->++++<]>+.-------[->++<]>.--[->++<]>.-[->++++++<]>-.-[----->+<]>+++.[--->++++<]>.[--->++++<]>+.-[++>-<]>-----.-[++>---<]>-.[-->+<]>++++.----[->+++++<]>+.-------.[--->++<]>.[-->+++<]>--.+[->++++++<]>-.-.---[->++<]>-.>----------.>+++++.-[--->+<]>+.>-------.-[---->+<]>-.-[-->+++++<]>+.+[->++++<]>-.[->++++++<]>.++.--------.+[->+++++++<]>.+++[->++<]>.[------>+<]>.[-->+<]>-.[->++<]>+.++.++++.++++[->++++<]>.[-->+++++<]>.-[->++++<]>.>++[++>-<]>+.-[----->+<]>-.+++.+[->+++<]>++.[--->++++<]>.[->++++<]>--.------.+[----->+<]>.-[---->+<]>.[--->+<]>.-[--->+++++<]>+.>+++++++++++.[--->+<]>++.-----.--[----->+<]>-.-[--->+<]>.--[--->+<]>-.[--->+++++<]>+.[-->+++<]>+.----[->++<]>.+[->++++<]>++.>--[-->+++<]>-.[++>-<]>--.--[->+++++<]>.+++++++++++.-[++>-----<]>++.>--[-->+++<]>-.++[------>+<]>+.[--->+<]>.[-->+<]>++.[->+++<]>+.+[->+++<]>++.+[-->+<]>+.++[->+++++<]>.-[->++++++<]>+.[----->++++<]>-.--[--->++<]>.[--->+<]>++.[------>+<]>----.-----[->++++<]>+.[->+++++++<]>+++.[--->++++<]>.[--->+<]>+++.-[--->+<]>+++.-[-->+<]>----.--[->+++<]>+.--------.[->++++++++<]>.-[----->+<]>++.--[--->++<]>.-[----->+++<]>-.++[-->+++++<]>+.>+++.+[--->+<]>+++.+[--->+<]>.[->+++++<]>+.>-[--->+<]>.[--->++<]>---.+[++++>-<]>---.++++[->++<]>.-[--->++++<]>-.++[->++<]>.+[--->++<]>+.-[--->++<]>----.+++++[->++<]>+.++++.[--->+<]>+.++[->+++<]>+.-[->+++++<]>-.-[--->++<]>+.>+[----->+<]>+.+[->+++<]>+.---[->++<]>-.[->++<]>+.-[++>-<]>----.-[++>-<]>--.[-->+++++<]>.+[-->+<]>++.-[->++++<]>+.>+[------->+<]>.[--->+<]>+++++.>+[--->++<]>.>++++++++++++.+[->+++<]>++.-[--->++++<]>-.[----->+<]>-.>+++++++.[----->+<]>++.>+++++++++.+[--->++++<]>+.[--->+<]>.---[-->+++++<]>.[++++>-<]>+++.>-------.+[----->+<]>-.----[->+++<]>.>+[--->+<]>++.>-[----->+<]>+.-[--->++++<]>.+[->++++<]>+.>++++++.>--[++++++>-<]>.--------.>+[--->+<]>+++.---[----->++<]>.>---.-.---[->+++++<]>.[->+++<]>.+[++>-<]>++++.-----[->++<]>.>-----.[--->+<]>+.++[->++<]>.[->++<]>-.+++[--->++++<]>.--[->+++++<]>-.>+++++++++++++.-[->++++++<]>.-[->+++++++<]>.--[->++<]>.[--->++<]>.[++>-<]>---.>---------.+[--->+<]>.[--->++<]>++++.>---.>-[--->+<]>++.[--->+<]>-.-[----->+++<]>+.+[--->++<]>.[------>+<]>+.[->+++<]>.[--->++<]>.[->++<]>.+[->++++<]>-.>--------.[--->++++<]>++.>----------.-[--->++++<]>++.-[--->+++++<]>++.-[------>+<]>.------.--[->++++<]>--.[++++++>-<]>+.[++>-----<]>-.[--->++<]>-.[->+++<]>+.[-->+++<]>+.-----.---[++>---<]>.[->+++<]>+.+.>+++++.>-----[->++++<]>.[------->++<]>+.>--.[--->+<]>.[----->++<]>.[++>---<]>+.+++[->+++<]>.+[--->++<]>+.-[--->+<]>++.++[->++<]>+.>-[--->+<]>--.-[->++<]>-.[--->+<]>--.[--->+<]>.-[->++<]>.[-------->+<]>+.+++[->++++<]>.[--->+<]>+++.[->++++<]>.--.++[++>---<]>.[-->+<]>--.>--[-->+<]>.+[-->+<]>++++.>-.>++[------>+<]>++.-[-->+<]>--.-[--->+<]>+++.---[->++++<]>+.+[------>+<]>+.[----->++<]>.>--[--->+<]>.>++[++>-<]>.++++[->++++<]>+.++[----->++<]>+.>-[--->+<]>.+++++++++++++.>----------.-[----->+<]>--.+[-->+++<]>+.+++++[->++<]>.[-->+<]>-------.+++++.[->++<]>-.----------.-[++++>-<]>--.-[---->+<]>+++.+[++>-<]>+.+[++>---<]>.+[--->+<]>+.>-----.>-[----->+<]>+++.[-->+<]>----.[->++<]>-.+[->++<]>.[--->+<]>--.------[->++<]>.[++>-<]>-.[->++<]>.>++++++.>--[-->+<]>-.>---------.-[--->+<]>-.---[->+++++<]>.[++>-----<]>++.+[-->+++<]>-.-[->++++<]>-.--[--->++<]>.+[--->++++<]>.>++++++++++++++.>-.----.[->+++++++++<]>.+++++.-[----->+<]>.[->+++<]>-.[---->+<]>--.----[->++<]>.++[->++++<]>++.[-->+++++<]>--.----[->+++<]>.[--->+<]>--..[->+++++<]>-.>+[--->++<]>..[--->+<]>++.+[--->+<]>++.-[->++++++<]>.>+++.>----[-->+++<]>-.-[-->+<]>-.+[--->++<]>++.------.---[->+++++<]>.>---------.[----->++<]>+.+[--->++<]>++.>++++[++++>-<]>.++++[->+++<]>+.>-----------.-[---->+<]>----.+++[->+++<]>.--.>++[++>-<]>.+[-->+<]>+.-------.++[->+++<]>++.>+++.[----->+++<]>.++[->++<]>+.++[->++<]>.+[--->++<]>+.+[--->++++<]>+.+[->++++<]>-.---[->+++<]>.>+[--->+<]>+++++.++[->++<]>+.--[--->+<]>--.+[-->+++<]>++.-[--->+<]>---.[->++++<]>++.>++++.-[----->+<]>----.-[----->+<]>.++++++++.[--->+<]>++.--[----->++<]>.[++++>---<]>+.[++>-<]>++.>+[----->+++<]>.+[---->+<]>.[----->+<]>++.+[--->+<]>+.>---.>+[--->+<]>++++++.[--->++<]>++.--[->+++<]>+.-[->++++<]>-.+[++>-<]>.[------>+<]>-.[--->+++++<]>.-[++>---<]>+.+[->+++<]>++.>--[-->+<]>+.>++++++++++++++.+[------->++<]>+.[->++++++<]>+.+[-->+++<]>-.>-----[->+++++<]>.+[->+++<]>+.---[->++++++<]>.[->+++<]>+.++++++++++++.--[--->+<]>--.>+[--->+<]>+++.[++>---<]>--.+[------->++++<]>.>---.[->+++++++++<]>.>+++[->++++++<]>+.+++.>+[----->+<]>.-[++++>-<]>+.[---->+<]>.>--.>++++.+[->+++++++<]>-.++[++++>-<]>+.[--->+<]>+++.[->+++<]>.[->+++++++<]>.>+.+[------>+<]>--.>--[-->+<]>.+[---->+++<]>+.>-----.[->++++<]>--.[++>-----<]>+.>+[--->+<]>.--[--->+<]>---.+++[->++++<]>+.+[--->+<]>+.[->++++<]>--.[--->+<]>--.[--->+<]>+++++.>+++.-[++>-<]>.++[->++++++<]>.-[->++++<]>--.+++++++++.[--->+<]>+++.++[->+++++<]>-.----[->++<]>.----[->++++<]>+.-[++++>---<]>++.[--->++<]>--.[-->+<]>++++.+[--->++<]>.>+++++++++.[->+++++<]>+.-----------.-[++>---<]>-.>++[++>---<]>.+[--->++++<]>.------------.+[--->++++<]>.+++[->+++++<]>+.[++>-<]>+.-[++>-<]>---.-[->++++<]>+.-[--->+<]>-.>-[----->+<]>+++.++[->++<]>+.-[----->+<]>-.>+[----->+<]>.----[->+++<]>-.+[--->+++++<]>+.>+[--->+<]>.+[++++>-<]>-.++[->+++<]>+.>---.>++++[->+++++<]>.>+[--->+<]>--.++[--->++<]>++.[-->+++<]>-.+[++>---<]>++.[--->+<]>++++.--[->+++<]>+.-----[->++<]>-.-[++>---<]>-.--[->++<]>-.+[++>-<]>++++.[------->+++<]>.>------[->+++<]>.-[->+++<]>-.+[--->++++<]>--.+++++.--[->++<]>.>++++++++++.-[----->++<]>++.--[--->++<]>-.[--->+<]>----.-----------------.[----->++<]>.++++.[++>---<]>-.++[->+++<]>++.-[->++++++<]>-.--[->++<]>.[->++<]>.-------.+[-->+<]>++.[----->+++<]>.>-[----->+<]>+.++.+[--->+<]>+++++.+++++++++++.++[->+++<]>.+[++>-<]>++.[--->+<]>++.+[->++<]>+.+++[-->+++<]>.>+++++++++++.>-----.-[-->+++<]>.++++++++++++.---.---.>+[--->+<]>+++.++++.--[--->+<]>.+++++[->++<]>.-[->+++<]>-.--[->+++++<]>.>---------.+[---->+<]>+++.[------->++<]>+.+[-->+++<]>-.++++[->+++<]>.-[++++>-<]>+.>--[-->+<]>-.-[------->+<]>+.+[--->+<]>+.-------.>-----------.-[->+++<]>-.>-[----->+<]>---.+[->++<]>+.++++++[->++<]>+.[->++<]>.[->++++<]>+.[->+++<]>-.>-[------->+<]>.---[->+++++<]>-.+[-->+++<]>+.-[----->+<]>+.>+[--->++<]>.-[----->++<]>++.[--->+++++<]>.>------.>+[--->+<]>.++++[->+++++<]>.-[-->+++<]>+.[++++>---<]>.[++>-<]>--.++[++>---<]>+.-[------>+<]>--.------------.-[++>-<]>---.---------.--[->++<]>-.>------------.-[----->+<]>+.[-->+<]>++++.++++++++++++++.-[->+++++<]>.+[----->+<]>++.[--->++<]>+.>--[-->+++++<]>.-[++>-----<]>-.[--->+<]>+++.[->+++<]>-.++++++++++++++.[--->+<]>-----.+[----->+<]>+.>--[----->+<]>--.---[->++++<]>.-----------------.+[->+++<]>++.++[-->+++<]>+.[->++<]>-.--[->+++++<]>+.>--------.-[----->+<]>+.>+[--->+<]>++.++[->+++++<]>.+[-->+++++<]>+.[->+++<]>-.[----->+<]>-.+[++++>-<]>-.+[--->++++<]>++.[++>---<]>.[--->+<]>+++.---------.-[--->+<]>++++.+++++[->++<]>.>--[-->+<]>+.>+[------->+<]>.[--->+<]>+.-----[->++<]>.[-->+<]>---.------------.[->+++++<]>+.--[->++<]>-.>++.+[----->+<]>--.--[->+++<]>.>+++++.++[----->+++<]>.+[->++<]>.+[--->++++<]>-.+++++++++.>--------.>+.+++[--->+++++<]>.[--->++++<]>-.---[++>---<]>-.>--[-->+<]>.-[----->++<]>.>+++.>--.[----->+<]>---.[----->+++<]>+.-----[->++<]>.[-->+<]>----.----[->+++<]>.---[->++<]>-.>++++++++.[----->++++<]>++.[++>-<]>+++.>----------.>--[--->+<]>.[++>-<]>+++++++.[------>+<]>+.>-[--->+<]>++.>++++++++.+[->++++<]>++.[--->++<]>++.---.+[---->+<]>-.>+++++.+[----->++++<]>+.>--------.---[->++++++<]>.--[-->+++<]>-.---[->++++<]>.>--.[------->+<]>++.[-->+++++<]>++.[++++++>-<]>.--[--->++<]>.[++++++>-<]>---.-[---->+++<]>.-[->++<]>-.--[----->+<]>+.---[->++++<]>-.[->++++++<]>.>--[-->+++<]>-.[++>-<]>+++.>-[----->+<]>+.-----------.+[----->++<]>.>--[-->+<]>+.------[->+++<]>+.+[++>-<]>++.+[->+++<]>.-[->+++++<]>++.>++++.[--------->+<]>.[->++++++++<]>+.>-------[->+++<]>.>+++++++++.+[++>-<]>+++.>-.---[-->+++<]>.[----->+<]>.[++>-<]>++++++.-.-[--->++<]>-.-[++++++>-<]>--.+[----->++<]>.>--.------[--->++++<]>.>++[++>-<]>+.++++[++>---<]>.-[++>-<]>-.--[--->++<]>---.--[--->+<]>--.>++[++>-<]>+.>+[--->+<]>----.[------->+<]>+.+++[----->+++<]>.+[++>-<]>++++.-[->+++<]>-.--[-->+++++<]>.--[------>+<]>-.++++.++++++++++++.++.+[++>---<]>.[--->++<]>.+[--->+<]>+.+.----------.>+++++++++.>--[-->+<]>+.-[----->++<]>--.[----->+<]>--.+[----->++++<]>.[----->+<]>-.++.[->++<]>-.[--->+++++<]>.>------.[->+++++<]>.>---.-[--->++<]>-.+[->++<]>+.------.--[--->+<]>.-[++>-<]>--.+[----->+<]>+.+++++++++.>+[--->++<]>.++[-->+++<]>.[->++<]>.[++++>-<]>-----.++++++++++++.-[-->+<]>--.-[->+++++<]>--.[->+++++<]>--.[--->++<]>--.>-------.+[-->+++<]>-.-[->++++<]>+.--[->++<]>.[--->++<]>++.---------.+[-->+++<]>++.>-----[->++++<]>+.+[-->+++<]>.-[++++>-<]>+.++[++>---<]>.[++>-<]>---.>++++[->+++++<]>.[--->+<]>.--[--->++<]>.+++.++[->+++<]>.---------.----[++>-----<]>.[--->++<]>++.[-->+<]>+.[->++++<]>-.[->+++<]>-.+[->++++<]>.+[--->+<]>+.-----------.-----.>-[----->+<]>-.>--[-->+<]>-.>+[--->+<]>++++.-[->+++++<]>.>+[--->+<]>+.++[->+++++<]>++.[++>-<]>-.-[--->+<]>----.>-[----->+<]>.>-[--->+<]>++++.+[-->+++<]>.+[++++>-<]>+++.-[---->+<]>+.++[->+++++<]>-.+[++++>-<]>.---[->++++<]>+.+[----->++<]>.>+[--->+<]>---.-[->+++++<]>++.>+[--->+<]>+++.[->+++++++<]>+.[->+++++<]>++.-[->+++<]>+.-[-->+<]>-.+[---->+<]>.-[->+++<]>-.---[->++++++<]>.-[--->++<]>-.-[-->+<]>---.[->+++++<]>.[->++++<]>-.+++.++.+[->+++++<]>.+++[->+++<]>+.--.[->++++<]>++.>-----[->+++<]>.-[-->+<]>---.>+[--->+<]>+.++[++>---<]>+.[++>-<]>++++.[->++++<]>.--[--->++<]>--.[-->+<]>+++++++.[++>-<]>++++.[-->+<]>+++.>+++++++.[----->++<]>.>+[------->+<]>.+[-->+<]>+++.>+[----->++<]>+.>+++++++.-[++>-<]>-.-------[->+++<]>.+[->++++<]>+.+++[++++++>-<]>+.++.+[----->+++<]>-.+[->+++<]>+.>+[--->+<]>------.+++++++++++++.--[->+++<]>-.++[->++<]>.-[->+++++<]>+.[--->+++++<]>-.-[++++++>-<]>+++.+++[++>---<]>.>-[--->+<]>++.-[--->+<]>---.[--->+<]>-----.[----->+<]>--.>----------.[->+++++++<]>.[++>---<]>++.++++++++.++[->++<]>.-.[->++++++++<]>.>---------.>+[------->+<]>-.+[--->++<]>.-[--->++<]>.>-[----->+<]>.++[->++<]>.+++++++.----[->+++<]>.>-[--->+<]>-.>++[++>-----<]>.>+[--->+<]>.--[--->+<]>-.+++[->++<]>+.--.>--[-->+<]>-.>+[--->++<]>.[--->+<]>--.[->++++<]>--.[------->++<]>.-[--->+<]>-.-[->++++<]>-.+[++>---<]>-.-[--->+<]>----.++.++++++++.>++[++>-----<]>.-[----->++<]>+.>+++++++++++.>+[----->+<]>-.>-[--->+<]>.[----->++<]>.[------->+<]>+.>+++.-[--->+<]>.[-->+<]>++.>-------.>+++++[->+++++<]>.+[++>---<]>-.-[----->+++<]>.>+++++++.++.+[++>---<]>++.++++++++++++.[--->+<]>++.>-[----->+<]>-.-[->+++<]>+.[++++>-<]>.+[++>---<]>.-[--->+<]>-.+[--->+<]>+.-[----->++<]>.[->+++<]>+.>--[----->+<]>.-[--->++++<]>.[---->+++++<]>++.+[->+++++<]>.[-->+<]>.+[-->+++<]>.++++++++++.+[->++++<]>+.[->+++++<]>-.[---->+++++<]>-.+[---->+++<]>++.[--->++<]>+.+[-->+++<]>++.>------.-[----->++<]>+.++++[->++<]>+.[->+++<]>-.[----->++<]>++.[-->+<]>---.------[->++<]>.--[--->+<]>----.[++>-<]>+.>+[--->+<]>.++++[->+++<]>+.--[++++>---<]>.>-----------.--.[----->++++<]>-.[->++<]>.>++++++++++++.+[--->++<]>+.>---------.[----->+++++++<]>.+[--->++<]>+.>---.--[->+++++<]>.++++++.--------.++++.---[->++<]>.-[->+++<]>+.--[------->+<]>+.+++[++>---<]>.>+[--->+<]>+.++[++>---<]>+.+[----->++<]>.>------.[----->+<]>-.[--->+<]>.-[++++++>-<]>+.[++++>---<]>.--[->+++<]>.----[->+++<]>-.[------->+<]>++.-[++>-----<]>+.[->++++<]>-.>--------------.[--->++<]>--.+[->++<]>.++.[-->+<]>---.------------.-[->+++<]>-.+[->++++<]>++.>++++++++++.[++++++>-<]>.[--->++++<]>--.>++++++++.[++++>-----<]>-.+++[++++++>-<]>.--[--->++<]>-.>-[--->+<]>++.-------------.--[-->+++++<]>.+++++++++++.>+[--->++<]>.[--->+<]>++.>+++++.>-----[--->++++<]>.[->+++++++<]>.[++>-<]>-.[->++++<]>.[->+++++<]>+.[--->+<]>++.--[->+++++<]>-.>-[----->+<]>+.[++++++>-<]>.-[--->++<]>--.>---.[----->++++<]>---.[->++++++<]>+.+++++++++.>++.-[----->+<]>-.+[----->++<]>-.--[--->+<]>--.+++.>--.[--->+<]>-.+++++[->++<]>+.+[-->+<]>.-[++>---<]>-.[++>---<]>-.++++.-[++>-<]>---.-[->++<]>.[++++>-<]>++.>+[--->+<]>.[------->+<]>.-[--->++<]>--.---[->++++++<]>-.++[--->++<]>+.-[++>---<]>.>-[----->+<]>---.-[->+++<]>.>++[++>-<]>.-[-->+<]>---.[--->++<]>.----------.--------.+++++++.>+++++++.+[--->++<]>+.>++.+[------->+<]>-.>----[->++++<]>-.+[-->+<]>+.+[++>-<]>++.>-.-[++++++++++>-<]>.----------------.-[----->+<]>--.[++>-----<]>-.>--[-->+++<]>.--[--->++++<]>--.[------>+<]>-.-[->++++<]>--.+[--->+++++<]>.--[->+++<]>+.++[---->+<]>++.+[->+++<]>+.---[->++<]>.>---------.-[--->++++<]>---.-[------>+<]>-.-----[->++<]>.++[->+++<]>++.>-.---[->++++<]>-.[->++++<]>++.>-[--->+<]>++.>+++++.[--->++<]>.-------[->++<]>.[----->+++<]>--.[++++>---<]>.++[++>---<]>.+[---->+<]>+.>+++++++++.[------->+<]>+.>++++++++++.[->+++++<]>.----[--->++++<]>.[----->++<]>.+++.>+++[->++++++<]>.[->+++<]>-.---[-->+++<]>.+[++++>-<]>--.>---------.[->+++<]>.+[--->+++++<]>.-[->+++++<]>++.>+[--->+<]>++++.>+++.[------->++++<]>.>+[----->+++<]>.>-[--->+<]>.>--[-->+<]>.-------.-[----->++<]>.[--->++<]>-.-----------.++[->+++<]>+.+[----->++<]>-.++++++++.[------->+<]>++.>++.[----->++<]>.>----.----[->+++++<]>.[->+++<]>-.[->++<]>-.-[++++>-<]>++++.[--->+<]>-.+[->++++<]>++.++[->++<]>+.-[->+++<]>-.++++++++++++++++.[--->+<]>++.++++++++++++++.-[--->+++++<]>.>--[--->+<]>.[++>-<]>+++++.--[->+++<]>+.+[->++++<]>++.[++>-<]>---.[++>-----<]>++.>-[----->+<]>++.[->++<]>.[++>-<]>----.+[++++++>-<]>.[----->+<]>-.[->+++++<]>++.++[->+++<]>+.[--->+<]>-.+[--->+<]>+++.>+++[->++++++<]>.-[->+++++++<]>-.-[->+++<]>.[----->+<]>++.>++[++>-<]>.>+++++++++++.-[++>---<]>--.+[----->+<]>.+++++[->++<]>.>+[--->+<]>--.+++++++++++++.++[->+++<]>++.++[->+++<]>++.>-.>++++[++>---<]>++.++[->++<]>.[++++>-<]>----.----[->++<]>.--[--->++++<]>.[----->+<]>+.[->+++<]>+.--[->+++<]>-.[----->+<]>--.-[-->+++<]>--.>+++.>+[--------->+<]>.[--->++<]>+.-[-->+++<]>+.[++>-<]>----.>--[-->+<]>-.--[++++>---<]>.--[--->++++<]>.+++[------->+<]>.+.+++++++++++.>-[----->+<]>-.+++++++.>-------.-----.-[->++<]>.+[->+++++++++<]>.>+[--->+<]>+.>+++++++++++.[--->++++<]>+.++++.[->++++<]>+.-[-->+<]>--.[-->+<]>-.+[->++++++<]>--.+[--->++<]>-.-[--->+<]>.-[----->++<]>+.+[-->+<]>++.>+++++++++++.-[--->+<]>-.>-------------.[--->+<]>.++++++++++++.>++.-[--->+<]>-------.----[->++<]>-.-[++>---<]>+.[----->+<]>-.+[->++++<]>++.>-----[->+++<]>.+[->++++<]>-.-[++>-<]>---.[++>-----<]>+.-[---->+<]>+.+[-->+<]>+.>------[->++++<]>..+++[->+++<]>.+[++>---<]>.-[++>---<]>.-----.-----.+[----->++<]>-.+[--->++<]>++.[++>---<]>+.-----------.[->+++++<]>-.+++[->+++<]>++.>+[----->++<]>--.+++[->+++<]>++.-[-->+++<]>.+[++>-<]>+++.-[------->+<]>-.>+[----->++<]>++.[++>-<]>----.------.-[->++<]>-.---------.[++++++>-<]>.[->++++<]>-.+[++>---<]>+.---[->+++++<]>.++[---->+<]>++.>------------.[-->+<]>++.++++++.-------------.+[++>-----<]>.+[++>-----<]>++.++[++++>-<]>.>+[--->+<]>.>++[++>-<]>.+[--->+<]>+++++.[------->++<]>.>+[----->+<]>.+[++>-<]>++++.>++++[->++++<]>.+[->+++<]>+.++[->+++<]>.-[----->++++<]>+.[--------->+<]>+.---[->+++<]>.-[++>-<]>--.-[->++++<]>--.>------.[----->+++<]>.>++.++++.--[++++>-<]>---.-[->++++++<]>.>-.[----->++<]>-.>+++++++++.+[--------->++<]>.[->+++++<]>--.-----[->++<]>.[-->+++++<]>.[--->+<]>---.[-->+++++<]>.+[----->++<]>.-[--->++++<]>---.+[++>---<]>-.[->+++++++<]>-.>++[++>-----<]>.[->++++++++<]>.[--->+<]>--.+[--->+<]>.[->++++++<]>.++[->+++++<]>.-----.>------------.>+++++++++++++.-[++>---<]>--.[++++>-<]>.>-.>++++[++++>-<]>-.++[->+++<]>+.-[++>---<]>.[--->+++++<]>+.[-->+++++<]>+.-[----->+<]>-.+[++++>-<]>.>----[-->+++<]>-.++++++++++++++++.-[--->++<]>.++.-[->++++++<]>.+[->+++<]>+.-[->++++<]>+.-----.-[->++++<]>-.+++[->+++<]>.>--[--->+<]>.[--->++<]>+.>-------[->+++<]>.+[-->+<]>++.[------->+<]>--.+++.+[++>---<]>-.+++++++.---[->+++<]>.--[->+++<]>-.++[->++<]>.>-.---[---->+<]>+.+[--->++<]>+.+[->++++++<]>.++++.>+[--->+<]>---.>--[-->+<]>-.++[---->+++<]>.>-----.>++[++>---<]>.>-[----->+<]>-.[-->+<]>.-[++>-<]>---.+[->++++++<]>-.+[++>---<]>.>-----------.--[----->+<]>+.>+[--->+<]>+.--[--->++<]>--.----.[-->+<]>.++++++.[--->+<]>-.[->+++++<]>++.[++>-----<]>.+[->+++++<]>.+++++++++.-.+[--->+<]>+.[----->+<]>.>---------.-[-->+<]>-.[++>---<]>+.[->++<]>-.[--->+<]>.>-----.---[->++++<]>-.[--->+<]>.[--->++++<]>+.-[-->+<]>-----.+[-->+<]>++.>-----.[--->+<]>-.-[------->+<]>++.+[->+++++<]>.--[--->++<]>--.[-->+++++<]>.+++[++>---<]>.[->++<]>-.+[--->+<]>++.[-->+<]>-.[--->+++++<]>.[--->++<]>---.>+[----->+<]>.-[----->+++<]>+.+[++>-<]>+++.++++++++++++++.[++>-<]>----.>--[-->+++<]>.>+[----->++<]>+.+[-->+<]>+++.++++++++++++++.[->+++++<]>+++.>+[--->+<]>+++.--[--->+<]>-.>+++[->+++++<]>.+[--->++<]>-.+[-->+++++<]>+.---[------->+<]>.>-[--->+<]>---.>---.[----->++++<]>-.-------[->++<]>.[------->+<]>-.[->+++<]>.[->++++++++++<]>.++++++[->++<]>+.------.-[->++<]>.>----.[--->+<]>+++++++.>+++.++[->+++++<]>.>------.--[--->++<]>.-.+[++>-<]>++.[++++++>-<]>.--[->++++++<]>.>--------.---------.--[--->++<]>-.+++[->++<]>+.[--->++<]>+++.------[->++<]>.[++>-<]>+++.+[->++++<]>+.----------.+[--->+<]>++++.[--->+<]>+.+[->++++<]>-.--[--->+<]>.-[--->+<]>-.+[-->+++++<]>--.----------------.>-----------.--[----->+<]>+.++[--->++<]>+.+[-->+<]>.--[--->++<]>.+[--->+<]>++.-[--->++<]>--.>--[-->+<]>-.[--->+<]>+++++.-[--->++++<]>.--[-->+++++++<]>.-[->++++++<]>+.-[------>+<]>.--[->++<]>-.+[-->+++<]>++.>-.------.>+++++[->+++++<]>+.>+++++++.>-[--->+<]>----.[----->+++<]>.+[---->+<]>.--[->++++++<]>-.>-------.>+[----->++<]>++.[++++>---<]>++.>---.-[--->++++<]>-.+[++++>-<]>++.-[->++++<]>.[++++>-<]>++.>-[--->+<]>--.+[++>-<]>+.--[->++<]>-.+++++++[->++<]>+.+[++>---<]>++.>--------.[->++++++<]>-.>---.>+++++++++++++.+[--->+<]>++.+[->++<]>+.[->++<]>.[->++<]>+.[->++<]>.[->++<]>+.[->++<]>+.[->++<]>+.[->++<]>.[->++<]>+.[->++<]>+.[->++<]>.[->++<]>+.[->++<]>.[->++<]>+.[->++<]>+.[->++<]>+.[->++<]>.[->++<]>+.[->++<]>+.[->++<]>.[->++<]>+.[->++<]>.[->++<]>+.>-.[--->+<]>+++++++++.>-.[----->++<]>.++[---->+++<]>+.>++++.>+[----->+<]>----.+[->++++<]>.
Krzysztof Szewczyk
fuente
2
La presentación es la imagen en sí, no el código
MilkyWay90
¿Puedes editar el encabezado para eliminar la brainfuckparte necesaria y actualizar tu puntaje a la relación de compresión?
Jo King