{ "info": { "author": "Ivan Ladelschikov", "author_email": "tsionyx@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Environment :: Web Environment", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Games/Entertainment :: Puzzle Games" ], "description": "\n|PyPI| |PyPI - Python Version| |PyPI - Implementation|\n\n|Build Status| |Coverage Status| |codebeat badge|\n\nNonogram solver\n===============\n\nSolve the `nonogram puzzles `_\nand watch the solution process.\nBoth black-and-white and color puzzles with the unlimited\n(at least in theory) size are supported. Also, you can easily solve puzzles\nfrom http://webpbn.com or http://www.nonograms.org/ that have thousands of them.\n\n\nDifferent sources are supported:\n\n- local puzzles, embedded inside the package\n- local puzzles, created by yourself\n- puzzles from http://webpbn.com (without downloading)\n- locally saved webpbn puzzles (mainly for development/debug purpose)\n- http://www.nonograms.org/ (http://www.nonograms.ru/) puzzles\n\n\nInstall\n-------\n\n.. code-block::\n\n pip install pynogram\n\n\nConsole\n-------\n\nFirstly, make sure it works (if not, see the `Errors`_ section):\n\n.. code-block::\n\n $ pynogram\n # # # # # # # # # 1 1\n # # # # # # # # # 1 1 1 1 5\n # # # # # # # # # 7 1 1 1 7 0 3 1 1 2 0 6 0 6 0 3 1 5 1 3 0 1\n 1 1 1 # . . . # . . . . . . . . . . . . . . . . #\n 1 1 1 1 1 # . . . # . . . . . . # . # . . . . . . . #\n 1 1 2 1 1 3 1 # . . . # . . # # . . # . # . . # # # . . #\n 5 1 1 1 1 1 1 1 1 # # # # # . # . . # . # . # . # . # . # . #\n 1 1 4 1 1 1 1 1 1 # . . . # . # # # # . # . # . # . # . # . #\n 1 1 1 1 1 1 1 1 # . . . # . # . . . . # . # . # . # . # . .\n 1 1 2 1 1 3 1 # . . . # . . # # . . # . # . . # # # . . #\n\n\n`Local `_\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nTo solve one of the embedded puzzles do the ``pynogram --board {NAME}`` (or simply *-b*)\nwhere NAME is the name of the file (you can skip the *.txt* extension).\nSee the list of all embedded puzzles in the *pynogram/examples/* of your installation folder [1]_.\n\n.. code-block::\n\n $ pynogram --board=winter --draw-final\n # # # # # 2\n # # # # # 1 1 4 1 2 4 4 5 2 7\n # # # # # 5 7 2 1 3 3 7 4 6 7 6 3 4 4 4 3 6 2 5 1 125 1\n # # # # # 6 3 7 6 6 6 4 111 1 4 5 1 1 7 1 1 5 4 1 1 1 6 103\n # # # # # 4 5 5 6 6 7 7 6 4 3 3 2 2 1 2 2 1 1 1 1 1 1 3 1 8\n 1 5 114 # . # # # # # . # # # # # # # # # # # . . # # # #\n 3 3 9 2 1 # # # . . . # # # . # # # # # # # # # . . # # . #\n 2 8 5 5 # # . . # # # # # # # # . # # # # # . . # # # # #\n 2 145 # # . . # # # # # # # # # # # # # # . # # # # # .\n 2 4 4 2 6 # # . . # # # # . # # # # . . . # # . # # # # # #\n 2 6 5 2 . # # . . . # # # # # # . . . . . # # # # # . # #\n 117 # # # # # # # # # # # . . . . . . . # # # # # # #\n 6 3 3 6 # # # # # # . # # # . . . # # # . . . # # # # # #\n 1 7 5 5 # . # # # # # # # . . . # # # # # . . . # # # # #\n 8 7 4 # # # # # # # # . . . # # # # # # # . . . # # # #\n 8 9 4 # # # # # # # # . . # # # # # # # # # . . # # # #\n 121 8 # # # # # # # # # # # # . . # . . # # # # # # # #\n 2 1 2 . . . . . . . . . . # # . . # . . # # . . . . . .\n 9 3 . . . . . . . . . . # # # # # # # # # . # # # . .\n 2 . . . . . . . . . . . . . . . . . . . . . . # # .\n 9 . . . . . . . . . . . . . . # # # # # # # # # . .\n 6 . . . . . . . . . . # # # # # # . . . . . . . . .\n 6 . . . . . . . # # # # # # . . . . . . . . . . . .\n 6 . . . . . # # # # # # . . . . . . . . . . . . . .\n 7 . . . # # # # # # # . . . . . . . . . . . . . . .\n 8 . # # # # # # # # . . . . . . . . . . . . . . . .\n 8 # # # # # # # # . . . . . . . . . . . . . . . . .\n 8 # # # # # # # # . . . . . . . . . . . . . . . . .\n 7 # # # # # # # . . . . . . . . . . . . . . . . . .\n 7 # # # # # # # . . . . . . . . . . . . . . . . . .\n\nsolve simple color puzzle (UK flag)\n\n.. code-block::\n\n $ pynogram -b uk\n # # # # # # # 1 1 2 2 3 3 4 4 3 3 2 2 1 1\n # # # # # # # 1 2 1 2 1 2 1 1 2 1 2 1 2 1\n # # # # # # # 1 1 2 4 3 3 2 2 1 1 1 1 2 2 3 3 4 2 1 1\n # # # # # # # 5 5 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 5 5\n # # # # # # # 3 3 3 4 3 3 2 2 1 1 4 5 5 6 6 5 5 4 1 1 2 2 3 3 4 3 3 3\n # # # # # # # 5 5 4 1 2 1 2 1 2 1 7 5 5 3 3 5 5 7 1 2 1 2 1 2 1 4 5 5\n # # # # # # # 1 1 2 1 1 2 2 3 3 4 4 5 5 6 1515156 5 5 4 4 3 3 2 2 1 1 2 1 1\n 3 113 113 % % % * * * * * * * * * * * % % % * * * * * * * * * * * % % %\n 2 3 9 3 9 3 2 * * % % % * * * * * * * * * % % % * * * * * * * * * % % % * *\n 4 3 7 3 7 3 4 * * * * % % % * * * * * * * % % % * * * * * * * % % % * * * *\n 6 3 5 3 5 3 6 * * * * * * % % % * * * * * % % % * * * * * % % % * * * * * *\n 8 3 3 3 3 3 8 * * * * * * * * % % % * * * % % % * * * % % % * * * * * * * *\n 103 1 3 1 3 10* * * * * * * * * * % % % * % % % * % % % * * * * * * * * * *\n 31% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %\n 31% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %\n 31% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %\n 103 1 3 1 3 10* * * * * * * * * * % % % * % % % * % % % * * * * * * * * * *\n 8 3 3 3 3 3 8 * * * * * * * * % % % * * * % % % * * * % % % * * * * * * * *\n 6 3 5 3 5 3 6 * * * * * * % % % * * * * * % % % * * * * * % % % * * * * * *\n 4 3 7 3 7 3 4 * * * * % % % * * * * * * * % % % * * * * * * * % % % * * * *\n 2 3 9 3 9 3 2 * * % % % * * * * * * * * * % % % * * * * * * * * * % % % * *\n 3 113 113 % % % * * * * * * * * * * * % % % * * * * * * * * * * * % % %\n\nUser-defined\n~~~~~~~~~~~~\n\nTo create the puzzle by yourself, learn the format first. Do not panic, it is very simple!\nFind out the *pynogram/examples/hello.txt* file inside your installation folder [1]_\nand copy it to create a new puzzle.\nThen follow the comments in the file to add clues to your new puzzle.\nTo run the solver on your puzzle hit the ``pynogram`` and specify the path to your file:\n\n.. code-block::\n\n $ cp /install/folder/pynogram/examples/hello.txt my-new-puzzle.txt\n $ pynogram -b my-new-puzzle.txt\n # # # # # # # # # 1 1\n # # # # # # # # # 1 1 1 1 5\n # # # # # # # # # 7 1 1 1 7 0 3 1 1 2 0 6 0 6 0 3 1 5 1 3 0 1\n 1 1 1 # . . . # . . . . . . . . . . . . . . . . #\n 1 1 1 1 1 # . . . # . . . . . . # . # . . . . . . . #\n 1 1 2 1 1 3 1 # . . . # . . # # . . # . # . . # # # . . #\n 5 1 1 1 1 1 1 1 1 # # # # # . # . . # . # . # . # . # . # . #\n 1 1 4 1 1 1 1 1 1 # . . . # . # # # # . # . # . # . # . # . #\n 1 1 1 1 1 1 1 1 # . . . # . # . . . . # . # . # . # . # . .\n 1 1 2 1 1 3 1 # . . . # . . # # . . # . # . . # # # . . #\n\nWebpbn\n~~~~~~\n\nVisit the http://webpbn.com/ to see thousands of puzzles waiting for you to solve.\nTo run the solver on any of them just specify the puzzle id with the *--pbn* flag:\n\n`Simple black-and-white puzzle `__\n\n.. code-block::\n\n $ pynogram --pbn=3 --draw-final\n # # # # 3 3\n # # # # 2 1 2 4 3 3 2\n # # # # 3 1 2 1 3 5 1 1 3\n # # # # 5 5 1 1 1 1 5 5 5\n # # # # 5 9 113 2 3 3 3 3 3 2 3 119 5\n 5 . . . . . # # # # # . . . . .\n 9 . . . # # # # # # # # # . . .\n 11. . # # # # # # # # # # # . .\n 3 1 3 . # # # . . . # . . . # # # .\n 2 3 3 2 . # # . # # # . # # # . # # .\n 4 1 1 4 # # # # . . # . # . . # # # #\n 6 8 # # # # # # . # # # # # # # #\n 6 8 # # # # # # . # # # # # # # #\n 5 9 # # # # # . # # # # # # # # #\n 5 6 # # # # # . . . . # # # # # #\n 2 7 2 . # # . # # # # # # # . # # .\n 3 3 . # # # . . . . . . . # # # .\n 11. . # # # # # # # # # # # . .\n 9 . . . # # # # # # # # # . . .\n 5 . . . . . # # # # # . . . . .\n\n`Simple color puzzle `__\n\n.. code-block::\n\n $ pynogram --pbn=898 --draw-final\n # # # # # # # # 1\n # # # # # # # # 1 1\n # # # # # # # # 2 5 1 1 1\n # # # # # # # # 1 4 1 6 2 1 5 4 1\n # # # # # # # # 2 3 1 2 1 1 2 1 1 3\n # # # # # # # # 1 1 3 1 2 1 6 6 3 2 3 1\n # # # # # # # # 2 7 1 1 2 2 9 8 7 2 2 1 2 7 5\n 11. . % % % % % % % % % % % . .\n 5 1 2 1 2 1 1 . % % % % % * % % * % % * % .\n 2 1 12% % * % % % % % % % % % % % %\n 9 1 5 % % % % % % % % % * % % % % %\n 1 2 1 2 1 4 1 3 * % % X % % * % % % % X % % %\n 4 1 5 1 1 1 2 % % % % X % % % % % X % * % %\n 2 1 2 2 1 5 % % * % % X X . . X % % % % %\n 4 2 1 4 . % % % % . X X . X % % % % .\n 6 . . . . X X X X X X . . . . .\n 4 . . . . . X X X X . . . . . .\n 3 . . . . . . X X X . . . . . .\n 3 . . . . . . X X X . . . . . .\n 3 . . . . . . X X X . . . . . .\n 7 . . . . X X X X X X X . . . .\n 9 . . . X X X X X X X X X . . .\n\n\nIf you want to come over the network overhead when solving the webpbn puzzle,\nyou can download it prior to solving (e.g. http://webpbn.com/survey/puzzles).\nThen run the solver ``pynogram --local-pbn=path/to/pbn/puzzle.xml``.\n\n\nnonograms.org\n~~~~~~~~~~~~~\n\nThe http://www.nonograms.org also contains thousands of great puzzles.\nThis site offers only single-solution puzzles that do not require guessing,\ntherefore they usually solved quite fast.\n\n\n`Simple black-and-white puzzle `__\n\n.. code-block::\n\n $ pynogram --nonograms-org=19833\n # # # # # # 2\n # # # # # # 1 3 2 2\n # # # # # # 3 10 6 1 6 2 2 2 5 3\n # # # # # # 9 1 101 1 103 3 2 2 3 1 1 2 4\n # # # # # # 4 2 1 1 5 1 2 2 1 3 1 1 2 2 5\n 1 1 8 . # . . # . . # # # # # # # #\n 1 2 2 7 # . # # . # # . # # # # # # #\n 1 2 2 2 2 # . # # . # # . # # . . . # #\n 1 2 2 1 1 # . # # . # # . # . . . . . #\n 1 2 2 1 2 # . # # . # # . # . . # # . .\n 1 2 2 2 3 # . # # . # # . # # . # # # .\n 1 2 2 2 2 # . # # . # # . . # # . # # .\n 6 1 3 # # # # # # . # . . # # # . .\n 13# # # # # # # # # # # # # . .\n 10# # # # # # # # # # . . . . .\n 5 1 . . # # # # # . . . . . . . #\n 2 1 3 # # . . # . . . . . . . # # #\n 1 1 1 1 3 2 # . . # . # . # . # # # . # #\n 3 2 1 1 1 # # # . . . # # . # . . # . #\n 2 1 1 2 2 1 # # . # . . # . # # . # # . #\n\n\n\n`Simple color puzzle `__\n\n.. code-block::\n\n $ pynogram --nonograms-org=19784\n # # # # # # # 2\n # # # # # # # 2 2 1\n # # # # # # # 1 4 1\n # # # # # # # 2 1 6 2 3\n # # # # # # # 2 2 1 6 3 4\n # # # # # # # 1 2 2 2 6 2 1 7 6\n # # # # # # # 1 1 1 5 5 2 1 5 5 2 3\n # # # # # # # 1 1 4 111 1 1 1 1 1 1 1 1 4 4 1 1\n 4 \" \" \" \"\n 6 \" \" \" \" \" \"\n 1 3 2 \" ! ! ! \" \"\n 1 1 1 1 1 1 ! X ! X ! \"\n 5 1 ! ! ! ! ! \"\n 4 ! ! ! !\n 3 # # #\n 5 # # # # #\n 1 2 9 ! \" \" # # # # # # # # #\n 1 1 9 \" ! # # # # # # # # #\n 1 6 \" # # # # # #\n 1 5 \" # # # # #\n 1 1 2 2 \" # ! ! # #\n 1 7 \" $ $ $ $ $ $ $\n 1 7 \" $ $ $ $ $ $ $\n 3 1 2 2 2 2 5 X X X \" X X $ $ X X $ $ X X X X X\n 1 1 2 2 2 X \" $ $ $ $ X X\n 1 1 2 2 2 X \" $ $ $ $ X X\n 1 1 3 3 2 X \" X X X X X X X X\n\n\nModes\n~~~~~\n\nBy default, in the process of solving the new information will instantly appear on a terminal\n(as a full image board), so you can observe many boards that changing each other many times a second\nmixed with logs (if you specify any verbosity level with *-v* flag). But you can always disable\nthe board updates and force to show only the final result with *--draw-final* flag.\n\nAlso the *--curses* mode is available, that allows you to see the solving\ninside a separate console (`ncurses `_) window.\n\nExamples:\n\n$ pynogram --pbn `30216 `_ --curses\n\n.. image:: docs/images/curses-moose.gif\n\n$ pynogram --pbn `29723 `_ --curses\n\n.. image:: docs/images/curses-mosaic.gif\n\nErrors\n~~~~~~\n\nIf you see something like this (I stumbled with this while trying to run inside a docker container)\n\n.. code-block::\n\n $ pynogram\n ...\n UnicodeEncodeError: 'ascii' codec can't encode character u'\\u2b1b' in position 18: ordinal not in range(128)\n\nthen try to run with the special environment variable\n\n.. code-block::\n\n $ PYTHONIOENCODING=utf-8 pynogram\n\nIf that will work, you can save that variable for current session:\n\n.. code-block::\n\n $ export PYTHONIOENCODING=utf-8\n\nor for all the future runs\n\n.. code-block::\n\n $ echo 'export PYTHONIOENCODING=utf-8' >> ~/.bashrc\n\n\nWeb-solver\n----------\n\n- **to use the web solver you have to install additional subpackage:**\n\n ``pip install pynogram[web]`` and **start the server**: ``pynogram-web``\n\n- you can solve any of local puzzles (with */board/local/* path)\n or webpbn puzzles (with */board/pbn/* path)\n or nonograms.org ones (with */board/nonograms.org/* path)\n\n- you can specify render mode (with the *?render=MODE* argument).\n Now the four are supported:\n\n - **svg** (default) - draw nice vector image. It can seriously\n slows down the viewing and solving on a large boards (e.g. 50x50 and more),\n since the resulted SVG can be pretty huge.\n In the future releases I plan to apply more advanced SVG drawing to eliminate the problem.\n\n - **text** - lightweight text format similar to the one that draws on the console.\n\n - **text-grid** - slightly more advanced ASCII-graphic that renders\n the grid between cells. However it requires more screen space.\n\n - **text-grid-bold** - almost like the last one, but also draws bold lines,\n splitting the whole board into 5x5 squares (remember puzzles in those magazines?)\n\n\nhttp://localhost:3145/board/local/einstein?render=svg (zoom=67%)\n\n.. image:: docs/images/einstein-local-svg.gif\n\nhttp://localhost:3145/board/local/MLP?render=text-grid-bold (zoom=25%)\n\n.. image:: docs/images/MLP-local-text-grid.gif\n\nhttp://localhost:3145/board/pbn/2040?render=text (zoom=75%)\n\n.. image:: docs/images/marilyn-pbn-text.gif\n\nhttp://localhost:3145/board/pbn/2196 (zoom=75%)\n\n.. image:: docs/images/precious-pbn-svg.gif\n\n\nNotes\n-----\n\nBoth console and web solvers work on a wide variety of pythons:\nCPython2.7 and 3.5+, PyPy 2.7 and 3.5.\nThe best performance, however, achieved on PyPy (version 3 is always preferable), so try it out.\n\n\nYou can install *numpy* for slightly better performance\nwhen running on CPython interpreter\n(it's not listed in requirements to keep the package lightweight).\nHowever numpy does not work correctly with PyPy interpreter.\n\n\n\nReferences\n----------\n\nThe following sites and articles were used when making this solver:\n\n1. `The 'pbnsolve' Paint-by-Number Puzzle Solver by Jan Wolter\n`_\nand the `survey `_\n\n2. `The BGU Nonograms Project\n`_\n\n3. `Solving Nonograms by combining relaxations\n`_\n\n4. `An Efficient Approach to Solving Nonograms\n`_\n\n5. `\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0446\u0432\u0435\u0442\u043d\u044b\u0445 \u044f\u043f\u043e\u043d\u0441\u043a\u0438\u0445 \u043a\u0440\u043e\u0441\u0441\u0432\u043e\u0440\u0434\u043e\u0432 \u0441\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0441\u0432\u0435\u0442\u0430\n`_\n\n6. `\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u044f\u043f\u043e\u043d\u0441\u043a\u0438\u0445 \u043a\u0440\u043e\u0441\u0441\u0432\u043e\u0440\u0434\u043e\u0432 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0445 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u0432\n`_\n\n7. `'Nonolib' library by Dr. Steven Simpson\n`_\n\n-----\n\nThe software developed and tested on Ubuntu 16.04 LTS using PyPy 3.5 (mostly).\nIf you have any issues, drop a line to the\n`project site `_.\n\n\n.. [1] The installation folder can vary depending on your distro, python version\n and installation method. For example when installed inside virtualenv it can be\n in one of such paths:\n\n - .env/lib/python3.5/site-packages/\n - ~/.virtualenvs/pypy3/site-packages/\n - ~/.virtualenvs/pynogram/lib/python2.7/site-packages/\n\n When installing system-wide it can be in:\n\n - /usr/lib/pypy/lib-python/2.7/\n - /usr/local/lib/python2.7/dist-packages/\n\n If you still cannot find it, try the ``which pynogram``, it gives you some clue\n about where the installation folder can be.\n Also if you actually searching for the *examples/* folder,\n try ``pynogram --show-examples-folder``.\n\n.. |Build Status| image:: https://img.shields.io/travis/tsionyx/pynogram.svg\n :target: https://travis-ci.org/tsionyx/pynogram\n.. |Coverage Status| image:: https://img.shields.io/coveralls/github/tsionyx/pynogram.svg\n :target: https://coveralls.io/github/tsionyx/pynogram\n.. |codebeat badge| image:: https://codebeat.co/badges/21e69843-0e13-4046-bc88-b3f108ccff69\n :target: https://codebeat.co/projects/github-com-tsionyx-pynogram-dev\n.. |PyPI| image:: https://img.shields.io/pypi/v/pynogram.svg\n :target: https://pypi.org/project/pynogram/\n.. |PyPI - Python Version| image:: https://img.shields.io/pypi/pyversions/pynogram.svg\n :target: https://pypi.org/project/pynogram/\n.. |PyPI - Implementation| image:: https://img.shields.io/pypi/implementation/pynogram.svg\n :target: https://pypi.org/project/pynogram/\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "https://pypi.python.org/pypi/pynogram/0.3.1", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/tsionyx/pynogram", "keywords": "game,nonogram,solver", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "pynogram", "package_url": "https://pypi.org/project/pynogram/", "platform": "", "project_url": "https://pypi.org/project/pynogram/", "project_urls": { "Download": "https://pypi.python.org/pypi/pynogram/0.3.1", "Homepage": "https://github.com/tsionyx/pynogram" }, "release_url": "https://pypi.org/project/pynogram/0.3.1/", "requires_dist": [ "six", "memoized", "svgwrite", "tornado; extra == 'web'", "futures; ( python_version < \"3.2\") and extra == 'web'" ], "requires_python": "", "summary": "Nonogram solver", "version": "0.3.1" }, "last_serial": 4265455, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "0c41885b0679b2f85288230ea467d0ca", "sha256": "e4f1915b678ea39e1d2fbeae31a766ef0c4edfb79af17e08a4b495dd7766c958" }, "downloads": -1, "filename": "pynogram-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0c41885b0679b2f85288230ea467d0ca", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 52553, "upload_time": "2018-01-12T17:26:18", "url": "https://files.pythonhosted.org/packages/0e/5c/37f5811f91b471eb494d1503310aa1f2366658efa4c965e2eb14afca8cff/pynogram-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9f088a9408e5cf948e7d4cc784da8294", "sha256": "376e691db310e11c4776ac89e44471338744b843ebdbdab69a25db25407fff51" }, "downloads": -1, "filename": "pynogram-0.1.0.tar.gz", "has_sig": false, "md5_digest": "9f088a9408e5cf948e7d4cc784da8294", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45702, "upload_time": "2018-01-12T17:26:20", "url": "https://files.pythonhosted.org/packages/5c/d2/9436813863170a1d5f01ec92f0759787af2d3b9be91bea941c4b82d0a39c/pynogram-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "cecebd0bc5c14dce459d0beef133661a", "sha256": "c2764b27fde3263d27d6939599ceb30840196eee8176a60cce2468234e680932" }, "downloads": -1, "filename": "pynogram-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cecebd0bc5c14dce459d0beef133661a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 55013, "upload_time": "2018-01-18T15:13:10", "url": "https://files.pythonhosted.org/packages/d6/66/9512a381d73a67cc3dfadab08df1b6655bd14fb651ebaa4bc41ac90647ae/pynogram-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "366a96e91a134abbcd7318f3a3d7b70e", "sha256": "edfbfada9dba427a78fd74e7da891cc99e0b549eeb2c07cf666c30f07b259dde" }, "downloads": -1, "filename": "pynogram-0.1.1.tar.gz", "has_sig": false, "md5_digest": "366a96e91a134abbcd7318f3a3d7b70e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48683, "upload_time": "2018-01-18T15:13:12", "url": "https://files.pythonhosted.org/packages/96/0b/5b0051a5760398223e5e5ed1a2bb2afe333136e24212de6b0be5f3e1195e/pynogram-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "9917eb37ac0fbba56e034442c4123ff7", "sha256": "cd39176c7ad38fbd8366f044eafc8de0ef32dc436fa86d3f6d2d04d30c6c8e19" }, "downloads": -1, "filename": "pynogram-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9917eb37ac0fbba56e034442c4123ff7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 59070, "upload_time": "2018-01-30T08:18:42", "url": "https://files.pythonhosted.org/packages/57/ca/c995cf41d429aff34c3e4df12de575fc371e7d5c0ffb1049c3b53bfd5cc7/pynogram-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "20e5cbe3b6ba12f56f0578d03d2c3e0c", "sha256": "c09a9e186e80d94672651c48fdd3c20e3b3ef3c3036b4a95a05fd1c2d373c40a" }, "downloads": -1, "filename": "pynogram-0.1.2.tar.gz", "has_sig": false, "md5_digest": "20e5cbe3b6ba12f56f0578d03d2c3e0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 461212, "upload_time": "2018-01-30T08:21:14", "url": "https://files.pythonhosted.org/packages/5f/98/42359dabd89de3d40cf05474db77e17672cccaf72c19c46bbf1387bc4ad7/pynogram-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "fae30452d32379629543052ed3ad6873", "sha256": "836c1a1054e54311756c626e1376ab84fe07e627ec2239a39b071eb142ac1f54" }, "downloads": -1, "filename": "pynogram-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fae30452d32379629543052ed3ad6873", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 72020, "upload_time": "2018-05-19T13:28:05", "url": "https://files.pythonhosted.org/packages/09/7f/fa49978bb536073a870fa33f77396a49acc7ecfd8f61b76a47bdddd0f10e/pynogram-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7010fe64f8e4526e4cfa42c318224866", "sha256": "b02b3c9067a22866ef1c33ebb59fa24146f4f46964b33c6034dd1dc22a437084" }, "downloads": -1, "filename": "pynogram-0.2.0.tar.gz", "has_sig": false, "md5_digest": "7010fe64f8e4526e4cfa42c318224866", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 477944, "upload_time": "2018-05-19T13:28:07", "url": "https://files.pythonhosted.org/packages/f6/93/95d8ece989c35971a9acfed8a8bf27a4230da30a1c0811df3d1b166c441d/pynogram-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "c5b171cec1058f6df280454f8fb08684", "sha256": "2aff149318a302917e786edcb67329bfeccf2bfd51e60a36e246c402f621c1c8" }, "downloads": -1, "filename": "pynogram-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c5b171cec1058f6df280454f8fb08684", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 79916, "upload_time": "2018-06-11T17:02:51", "url": "https://files.pythonhosted.org/packages/23/e0/78a4cf70a400b4786222d1d0e76b6228217edf31df80d09a8a41a131f989/pynogram-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bea07a625f522e3a6a0c2d757dd9f3b0", "sha256": "3e450a1e9bcff1094edd8e1dec36aca8f6fd326fe37219e251a818f830a6f705" }, "downloads": -1, "filename": "pynogram-0.2.1.tar.gz", "has_sig": false, "md5_digest": "bea07a625f522e3a6a0c2d757dd9f3b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 839932, "upload_time": "2018-06-11T17:02:56", "url": "https://files.pythonhosted.org/packages/32/31/bf03b260567c96baee434fd7cd95f21f221ce604184d42ab5b1fd424989f/pynogram-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "8574a81c836724719c2c4c0a3e280e6d", "sha256": "ccd2cdfeef9842193df5241beffb800316df6e8a82d9e8a0c52125655f016a96" }, "downloads": -1, "filename": "pynogram-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8574a81c836724719c2c4c0a3e280e6d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 89579, "upload_time": "2018-08-30T13:42:57", "url": "https://files.pythonhosted.org/packages/8d/8f/1f9d3dc577f23ddc6497b04b0b9e6105a59647148c9763d5271329eba550/pynogram-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "07fee7609cf1ada434ea05d016abe249", "sha256": "8f6d6096e6fb5441d09dc65163b329c9dc69a0dcc486651983a59da306ade406" }, "downloads": -1, "filename": "pynogram-0.3.0.tar.gz", "has_sig": false, "md5_digest": "07fee7609cf1ada434ea05d016abe249", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 973557, "upload_time": "2018-08-30T13:43:00", "url": "https://files.pythonhosted.org/packages/52/24/a8931151817bbe951eb94fabc018bcc63cf224f5957ae07e6fe2c2e26ec3/pynogram-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "ab015a32d65861ea98beb8f621348ac1", "sha256": "cbe445e5eb944dcfa77b4d0d0a88a7986d23daba0cbccfde6283748a21be95df" }, "downloads": -1, "filename": "pynogram-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ab015a32d65861ea98beb8f621348ac1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 96083, "upload_time": "2018-09-12T15:41:09", "url": "https://files.pythonhosted.org/packages/1f/af/7a1c8e1cdb839923b973b09d31b5eb1af9ceec1eb12d9ae6f7ea61b6eae1/pynogram-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bca250795a26e0fc03b30aea5c79630f", "sha256": "633a69782f24ac7ef08d09d820474be3c9ff71f40130a62168d2c1a11161c5bc" }, "downloads": -1, "filename": "pynogram-0.3.1.tar.gz", "has_sig": false, "md5_digest": "bca250795a26e0fc03b30aea5c79630f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 980157, "upload_time": "2018-09-12T15:41:12", "url": "https://files.pythonhosted.org/packages/6a/99/4b58c3eaa69faff8c76ae4b6d86f25f15c3615823fae2d2a7c4979979c5f/pynogram-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ab015a32d65861ea98beb8f621348ac1", "sha256": "cbe445e5eb944dcfa77b4d0d0a88a7986d23daba0cbccfde6283748a21be95df" }, "downloads": -1, "filename": "pynogram-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ab015a32d65861ea98beb8f621348ac1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 96083, "upload_time": "2018-09-12T15:41:09", "url": "https://files.pythonhosted.org/packages/1f/af/7a1c8e1cdb839923b973b09d31b5eb1af9ceec1eb12d9ae6f7ea61b6eae1/pynogram-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bca250795a26e0fc03b30aea5c79630f", "sha256": "633a69782f24ac7ef08d09d820474be3c9ff71f40130a62168d2c1a11161c5bc" }, "downloads": -1, "filename": "pynogram-0.3.1.tar.gz", "has_sig": false, "md5_digest": "bca250795a26e0fc03b30aea5c79630f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 980157, "upload_time": "2018-09-12T15:41:12", "url": "https://files.pythonhosted.org/packages/6a/99/4b58c3eaa69faff8c76ae4b6d86f25f15c3615823fae2d2a7c4979979c5f/pynogram-0.3.1.tar.gz" } ] }