├── .gitignore ├── .idea ├── .gitignore ├── inspectionProfiles │ └── profiles_settings.xml ├── misc.xml ├── modules.xml ├── pytholic.iml └── vcs.xml ├── .readthedocs.yml ├── LICENSE.txt ├── README.md ├── docs ├── Makefile ├── conf.py ├── index.rst ├── make.bat └── source │ └── api │ ├── bible.rst │ ├── icons.rst │ ├── prayers.rst │ └── variety.rst ├── pytholic ├── __init__.py ├── bible │ ├── __init__.py │ ├── _books.py │ ├── _exceptions.py │ └── bible.py ├── icons.py ├── prayers.py └── variety.py ├── setup.py └── tests ├── test_bible.py └── test_sanctify.py /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Created by https://www.toptal.com/developers/gitignore/api/visualstudiocode,python 3 | # Edit at https://www.toptal.com/developers/gitignore?templates=visualstudiocode,python 4 | 5 | ### Python ### 6 | # Byte-compiled / optimized / DLL files 7 | __pycache__/ 8 | *.py[cod] 9 | *$py.class 10 | 11 | # C extensions 12 | *.so 13 | 14 | # Distribution / packaging 15 | .Python 16 | build/ 17 | develop-eggs/ 18 | dist/ 19 | downloads/ 20 | eggs/ 21 | .eggs/ 22 | lib/ 23 | lib64/ 24 | parts/ 25 | sdist/ 26 | var/ 27 | wheels/ 28 | share/python-wheels/ 29 | *.egg-info/ 30 | .installed.cfg 31 | *.egg 32 | MANIFEST 33 | 34 | # PyInstaller 35 | # Usually these files are written by a python script from a template 36 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 37 | *.manifest 38 | *.spec 39 | 40 | # Installer logs 41 | pip-log.txt 42 | pip-delete-this-directory.txt 43 | 44 | # Unit test / coverage reports 45 | htmlcov/ 46 | .tox/ 47 | .nox/ 48 | .coverage 49 | .coverage.* 50 | .cache 51 | nosetests.xml 52 | coverage.xml 53 | *.cover 54 | *.py,cover 55 | .hypothesis/ 56 | .pytest_cache/ 57 | cover/ 58 | 59 | # Translations 60 | *.mo 61 | *.pot 62 | 63 | # Django stuff: 64 | *.log 65 | local_settings.py 66 | db.sqlite3 67 | db.sqlite3-journal 68 | 69 | # Flask stuff: 70 | instance/ 71 | .webassets-cache 72 | 73 | # Scrapy stuff: 74 | .scrapy 75 | 76 | # Sphinx documentation 77 | docs/_build/ 78 | 79 | # PyBuilder 80 | .pybuilder/ 81 | target/ 82 | 83 | # Jupyter Notebook 84 | .ipynb_checkpoints 85 | 86 | # IPython 87 | profile_default/ 88 | ipython_config.py 89 | 90 | # pyenv 91 | # For a library or package, you might want to ignore these files since the code is 92 | # intended to run in multiple environments; otherwise, check them in: 93 | # .python-version 94 | 95 | # pipenv 96 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 97 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 98 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 99 | # install all needed dependencies. 100 | #Pipfile.lock 101 | 102 | # poetry 103 | # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. 104 | # This is especially recommended for binary packages to ensure reproducibility, and is more 105 | # commonly ignored for libraries. 106 | # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control 107 | #poetry.lock 108 | 109 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow 110 | __pypackages__/ 111 | 112 | # Celery stuff 113 | celerybeat-schedule 114 | celerybeat.pid 115 | 116 | # SageMath parsed files 117 | *.sage.py 118 | 119 | # Environments 120 | .env 121 | .venv 122 | env/ 123 | venv/ 124 | ENV/ 125 | env.bak/ 126 | venv.bak/ 127 | 128 | # Spyder project settings 129 | .spyderproject 130 | .spyproject 131 | 132 | # Rope project settings 133 | .ropeproject 134 | 135 | # mkdocs documentation 136 | /site 137 | 138 | # mypy 139 | .mypy_cache/ 140 | .dmypy.json 141 | dmypy.json 142 | 143 | # Pyre type checker 144 | .pyre/ 145 | 146 | # pytype static type analyzer 147 | .pytype/ 148 | 149 | # Cython debug symbols 150 | cython_debug/ 151 | 152 | # PyCharm 153 | # JetBrains specific template is maintained in a separate JetBrains.gitignore that can 154 | # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore 155 | # and can be added to the global gitignore or merged into this file. For a more nuclear 156 | # option (not recommended) you can uncomment the following to ignore the entire idea folder. 157 | #.idea/ 158 | 159 | ### VisualStudioCode ### 160 | .vscode/* 161 | !.vscode/settings.json 162 | !.vscode/tasks.json 163 | !.vscode/launch.json 164 | !.vscode/extensions.json 165 | !.vscode/*.code-snippets 166 | 167 | # Local History for Visual Studio Code 168 | .history/ 169 | 170 | # Built Visual Studio Code Extensions 171 | *.vsix 172 | 173 | ### VisualStudioCode Patch ### 174 | # Ignore all local history of files 175 | .history 176 | .ionide 177 | 178 | # Support for Project snippet scope 179 | 180 | # End of https://www.toptal.com/developers/gitignore/api/visualstudiocode,python 181 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/pytholic.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- 1 | # .readthedocs.yml 2 | # Read the Docs configuration file 3 | # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details 4 | 5 | # Required 6 | version: 2 7 | 8 | # Build documentation in the docs/ directory with Sphinx 9 | sphinx: 10 | configuration: docs/conf.py 11 | 12 | # Optionally build your docs in additional formats such as PDF and ePub 13 | formats: all -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Medromenax 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Pytholic logo](https://i.imgur.com/do67VC7.png) 2 | 3 | # Pytholic 4 | 5 | Develop and praise God at the same time! 6 | 7 | ## Description 8 | 9 | My main goal with Pytholic is to show that we, Catholics, can praise God and teach about Him in any way possible. Just like what Saint Paul said in 1 Corinthians 10, 31: *"Whatever you eat, then, or drink, and whatever else you do, do it all for the glory of God."* My second goal with this project was to practice a different kind of penance other than feast and abstinence in this year's lent (I mean, programming is not a penance, not for me, but doing it instead of play a game or watch a movie is). 10 | 11 | ## Instalation 12 | 13 | ```bash 14 | pip install pytholic 15 | ``` 16 | 17 | ## Usage 18 | 19 | Pytholic contains: 20 | * The 4 gospels of the Bible. 21 | * 12 prayers. 22 | * 4 Icons as ASCII. 23 | * A function that sanctify a string. 24 | * A function that explains the doctrine of the Trinity. 25 | 26 | The Bible class has 4 methods, matthew(), mark(), john() and luke(), they return a verse or a list of verses. 27 | ```python 28 | from pytholic.bible.bible import Bible 29 | 30 | bible = Bible() 31 | # returns one verse 32 | print(bible.matthew(1, 1)) 33 | # returns a list of verses 34 | print(bible.matthew(1, 1, 5)) 35 | ``` 36 | To return one of the 12 prayers. 37 | ```python 38 | from pytholic.prayers import Prayers 39 | 40 | 41 | prayer = Prayers() 42 | # each prayer is a method that prints a string 43 | prayer.our_father() 44 | ``` 45 | To return one of the 4 images. 46 | ```python 47 | from pytholic.icons import IconAscii 48 | 49 | 50 | icon = IconAscii() 51 | # returns an Ascii representation of an icon 52 | print(icon.pantocrator()) 53 | ``` 54 | To sanctify a string. 55 | ```python 56 | from pytholic.variety import sanctify 57 | 58 | 59 | text = "Hello World, i'm Charles 5 and i'm cool guy :D" 60 | sanctify(text) 61 | ``` 62 | 63 | To get an explanation of the Trinity. 64 | ```python 65 | from pytholic.variety import trinity 66 | 67 | 68 | # it will return a mini-game with a pythonic explanation of the Trinity 69 | trinity() 70 | ``` 71 | 72 | For more information, access https://pytholic.readthedocs.io/ 73 | 74 | ## Contribute please 🇻🇦 75 | 76 | As I said, this project was made as a form of penance, there's nothing special on it, but it can be improved. So if you are a catholic and a developer, please, consider helping this small project. 77 | 78 | # *Viva Cristo Rei!* -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- 1 | # Minimal makefile for Sphinx documentation 2 | # 3 | 4 | # You can set these variables from the command line, and also 5 | # from the environment for the first two. 6 | SPHINXOPTS ?= 7 | SPHINXBUILD ?= sphinx-build 8 | SOURCEDIR = . 9 | BUILDDIR = _build 10 | 11 | # Put it first so that "make" without argument is like "make help". 12 | help: 13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 14 | 15 | .PHONY: help Makefile 16 | 17 | # Catch-all target: route all unknown targets to Sphinx using the new 18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). 19 | %: Makefile 20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 21 | -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- 1 | # -- Path setup -------------------------------------------------------------- 2 | 3 | import os 4 | import sys 5 | sys.path.insert(0, os.path.abspath('..')) 6 | 7 | 8 | # -- Project information ----------------------------------------------------- 9 | 10 | project = 'Pytholic' 11 | copyright = '2022, Medromenax' 12 | author = 'Medromenax' 13 | 14 | 15 | # -- General configuration --------------------------------------------------- 16 | 17 | extensions = [ 18 | 'recommonmark', 19 | 'sphinx.ext.autodoc', 20 | 'sphinx.ext.viewcode', 21 | 'sphinx.ext.doctest' 22 | ] 23 | 24 | templates_path = ['_templates'] 25 | 26 | exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] 27 | 28 | # -- Options for HTML output ------------------------------------------------- 29 | 30 | html_theme = 'sphinx_rtd_theme' 31 | html_static_path = ['_static'] -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- 1 | .. Pytholic documentation master file, created by 2 | sphinx-quickstart on Sat Mar 26 23:15:05 2022. 3 | You can adapt this file completely to your liking, but it should at least 4 | contain the root `toctree` directive. 5 | 6 | Welcome to Pytholic's documentation! 7 | ==================================== 8 | 9 | .. toctree:: 10 | :maxdepth: 4 11 | :caption: Contents: 12 | 13 | source/api/bible.rst 14 | source/api/icons.rst 15 | source/api/prayers.rst 16 | source/api/variety.rst 17 | -------------------------------------------------------------------------------- /docs/make.bat: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | 3 | pushd %~dp0 4 | 5 | REM Command file for Sphinx documentation 6 | 7 | if "%SPHINXBUILD%" == "" ( 8 | set SPHINXBUILD=sphinx-build 9 | ) 10 | set SOURCEDIR=. 11 | set BUILDDIR=_build 12 | 13 | if "%1" == "" goto help 14 | 15 | %SPHINXBUILD% >NUL 2>NUL 16 | if errorlevel 9009 ( 17 | echo. 18 | echo.The 'sphinx-build' command was not found. Make sure you have Sphinx 19 | echo.installed, then set the SPHINXBUILD environment variable to point 20 | echo.to the full path of the 'sphinx-build' executable. Alternatively you 21 | echo.may add the Sphinx directory to PATH. 22 | echo. 23 | echo.If you don't have Sphinx installed, grab it from 24 | echo.https://www.sphinx-doc.org/ 25 | exit /b 1 26 | ) 27 | 28 | %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 29 | goto end 30 | 31 | :help 32 | %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 33 | 34 | :end 35 | popd 36 | -------------------------------------------------------------------------------- /docs/source/api/bible.rst: -------------------------------------------------------------------------------- 1 | The Bible module 2 | **************** 3 | 4 | Bible 5 | ----- 6 | 7 | The ``Bible`` class is the the main class of the module and the one 8 | responsible to return the verses. It has the following methods: 9 | 10 | * matthew 11 | * mark 12 | * luke 13 | * john 14 | 15 | .. currentmodule:: pytholic.bible.bible.Bible 16 | 17 | .. autoclass:: pytholic.bible.bible.Bible 18 | :members: 19 | 20 | BibleBooks 21 | ---------- 22 | 23 | The ``BibleBooks`` stores the verses and chapters. 24 | 25 | .. currentmodule:: pytholic.bible._books.BibleBooks 26 | 27 | .. autoclass:: pytholic.bible._books.BibleBooks 28 | :members: 29 | 30 | get_text 31 | -------- 32 | 33 | The ``get_text`` function, as its name suggests, is the responsible 34 | to get the texts 35 | 36 | .. currentmodule:: pytholic.bible._books.get_text 37 | 38 | .. autoclass:: pytholic.bible._books.get_text 39 | :members: 40 | -------------------------------------------------------------------------------- /docs/source/api/icons.rst: -------------------------------------------------------------------------------- 1 | The icons module 2 | **************** 3 | 4 | The ``Icons`` module only has one class, the ``IconAscii``. This class 5 | has 4 methods: 6 | 7 | *Observation: They are better seen in dark themes.* 8 | 9 | pantocrator 10 | ----------- 11 | 12 | >>> from pytholic.icons import IconAscii 13 | >>> icon = IconAscii() 14 | >>> print(icon.pantocrator()) 15 | .,,.,*.,..,*,,,**(/..*(.,,.,.,**,,.,,.**, ...,*/,*,**/#((/(/*,*(**/***#,*///,,*,,**..,,..,,,..,,,,/.,,,..,,,*,,/.,,,***/ 16 | . ...,..,,,,*,,,*//**,//*,*,,*,,,,,//,(*/,*.,*,,,,(%(%(##*(///((/***((***##//(*,((#(((#(#%####/(/(/,**,,,,,,,,,/,*,//*/ 17 | /*((((((#(#((///(((((////*(/(/***///((/((##%&&###%#%#%%(((%&%(#%%%*%#&%(#*.//*/(,//,/(///#%#%########%#/##(((#(((/*#(/( 18 | (((##((##(((((/((*//(/**///#(,/*..*/*%&&&&%%#(##%##%&%%%##%%%%%%%%%&%&&%%%(%%##&/*.,#*****(*/###%(%####(#(#((#((/##(((## 19 | //((#((#(/(/(//(((((//(((/,,/*,,.#%%%%%%%&%%#&%%%%#%%#(###%%#######(##%&%%%%%#%#%%#%#@,,*,(%#,##/#(/##(((#((#(#(/(/(###% 20 | *#((#(##((#/(/*/((/(//*,*,***(%%/%#&%%%#%(&%#%%%&%&%%%%######%%%%#&#%%%%%##%&&&&&%&%%%%#&*./,,,.*#(##(###(((((####((##(( 21 | ,((((#(#((*///*//(**....*(%%##(%##%%#%%%%&&%%%#%%%&#%&&%%##%%&%%##%##%%%&&%%%&%%&&&&%&&%%%#%/,(,,,/*.##(((#(((#(*((/(### 22 | ,#(*#((#((/**//#/*/,,.,#%((#(%&#&%&%%%%%%%%%##%#%&&&&#%%%%%%&%%%##%###%%%%%&&%%%%%%%%%%%%%%%##/.,*..(**/%((#%(##/#(###(( 23 | .(((##(#(/**(((*,,..*(/((#%%%%%%%%%##%%%%%%####%%%#%%%##%##%%%&%##%%%%%%&&&&&&&&&&&&&&%%&&&%%%%(#%,...,,/#(#((((////(#(/ 24 | .((((((////((*(**#/#%((#%%%%%%%&%%%%%%%%&%%%###%%#*...........,.,,,#%%%#%%%%%%&%%&&&&&&%%%%%%%&&%%#,. .,.//((#///**/#(( 25 | /(/////(#(/./ .*((%(###%%%%##%##(#&%%%#%##/.. . . ...,,,,..............,,##%%&&&&%&%&&&%&%%%%%%%%##%.. ,,./((#(//*//(( 26 | *((//(/(((*.*,,(%##%##%%%%%%%%%%&%%#%%,. .. ,..... ,... . ..,#%%%%%%&&&&&%%%%%#%####%%(. ..,//(((/(#(/( 27 | (*/(((/((*,,.,##(#%%#%##%##%%%%%%%% .. . .*.,,...,*,,.... . .,..*%%%%%%#%&&%&%%#%#%%%#%%%/.,,,,(((///(((( 28 | /(((/((/,...###(%%#####%%%#%#%%## * .. .... . .. ..,,,.,,/.. ...... .%%%%%%%%%%%%%%%%%%%####*/..,.((((((((/ 29 | */((/##,../(%#(#%#%##%%%%&%###% ..,. ..., .., ..,*. .,, . ........%%%%%%%%%%%#&%%#%%%#%#%*,.*/(#/(#((# 30 | *(((((,..,######%##%%%%%%%###/ ... ,... ... ..*,.....,...,., ... .., .. #%%%%%#%%&&%%%%%%%#%%%#/,,*,(((#(/( 31 | *#*#(,,..#%###(%%%%%%%%%%&%#/ .... ,.,. ...,*###&&%#(#(***,.,.. . ..., .#&%%%&%%%%%%%%%%%%#((##%,.,,/((#(# 32 | #(/(/*..,##(##%%%%%#%%%%%##/ . . .,. .,. /(#%%&&&@&&&&&%%#(#*/,... . . .&%%%#%%%%%%%%%%%%##((#*.,**((/(( 33 | #//*...,####%%#%((##(%##((% .. ... .. ,#&&&&&&&&&&&@@&&&&&%##(//. .. . .. .. .%%%%%%##%#%%%%%####(%#,,*,////( 34 | (*(,..,*/####%%##%%#%%%%## . . . (%&&&&&&&&&&&&&&&&&&%%%%#(((,,.. .. . *#%%%#%%#(##%##%%#(((%/,,.,//(( 35 | #((...,((((##%%&%%##%%%#(, ... . /%&&&%&&&@@&&&&&&&&&@&&&%%%#%#(*/*.,.. #%#%#%%%%%%%#%%&&%((#(,..**/(( 36 | ##(...,(#/%#######%#%%%#%.. . . ,%%&&%&&&&%&&&&&&&&&&&&&&&%(***(##/*,.. . .%#%%%%%####%##%&&%(#(. ../*// 37 | #(* ...(//##%#%#%#%%%#%## . .%%%%(,,.. ...*&&&&&&%(,..../#%#(,/*//..., .#%%%%%###%###%##%%%(# .//(/ 38 | %(,...,(((########%%#%##.. * /#(#((,(%%#**(##%%%%(/*/*(####/*(%#(***,.... ,#%%%#%%(#%(##%%#&&#/, ..//(/ 39 | %#,..*.((########%##%#(# . .. . (##(/(**,.../(*%&%&&*(/*.@., ....*/(%(/,.... *%%%%%#(/####%%%%%%#/. ..,/#/ 40 | ##/...,(#%####%#%###%###*. ... .#&&&&(#####(&&&&%%&%,%%&&/(*,**/,(%&%#*,,... . .##%#%%%%%%#%%%###(#/ .../(#/ 41 | %##. ,.(#(((###%#%##%###, . ,#&&&&&&&%&%%%#@&&%@%,*(&%&%#%####%%&%#**,,... .#(//#(#%%%%#%%%%%#%/...,*((( 42 | %##.. ,.#%##%%%%#%##%%### . ,#%&&&&&&&&%&&&&&&&&%*/(#%&%%&&&%%&%%#/**,,.,, . . #####%(#%%&%%%%%%(%%.*.,*/((/ 43 | ###/....#####%%%%%%#%#%%#, ,..,/%%&&&&&&&&&&&&&&&&%/*(%%&%&%&%%%###/****(/,.. .#(##%(#/%%%#%%%##&%(.*.*///(# 44 | #(##*,,,,%##(#%%%%%%%%%##/ .,,..,*%.*%%%&&&&&%&&&&%%&&%%((/%%&&&%%%#((*,,,/(#,,... ,%%%#(%##%%%%%%####,. ../*(((# 45 | ##(%#*..,*##%#%##%%%%#%%(( .(#(.,(#%%%&&&&&&&/*%#(#,,(#%&&%%%((/*,..,,.... . %%%%#&%(##%%%%%#(%*,...*/(%### 46 | ##%%%#..,.*(##%##%%%%%%%%#* . .,.,/#%%&&&&&#/,,,....,//##%%%(/**,..,,..... , *%#%&%%%%%%%%####%#.. ,/(/(###( 47 | #%##%%#,*,,*(##(##%#%%%##%(. *..,*((%&%#(,..*/%#(***..,/%%%#/,,..,,*... .#%#%%%##%&&%%%####..../((##%#%( 48 | %%#((%%%* ./#(#(##%&%%%#%### *,,.*((###**/(#%%%##/////,,*#%(**. ..,, .. . .###%(%%#%%%%%#%%%%....,,,.*,,,,, 49 | ////(((/*,..,#####%%&%%&%%#((. .,,.,/(((*##(###(....,/**((*/((/,,..,,,,.. . /#%%%%%%%%(%#%(%&%%.,/,,,*/*,*/*, 50 | ,,,,**//**/.,,(#%##(%%%&&%%#(#*. . **,,*****///(//*...,*////(****,. ..,,,.. , %(%%##%%%%%(#%%%%*,.. (*.,/*,,,,/* 51 | ,,,,,(/*///,.,,(&#((%%%%%%%%#%((/. ,..,,,,,****/(##((/*/((//*/,**,.....,, . ##%%%(#%&%#/%#&#*..,/*,.,*,*,,.,*, 52 | ,,#,*,.,#(*#*/****,//#(%#%#%#%###(*..,,*,,.,*,*,//(((///((//,,,.*.. ....,, .. . (%(%#%%###&%&@&*,*,#%%%%#((///***( 53 | ,*.,,,,,/(%%*(%#**,*,,*##(#%#%%###%#/,,/(,,.,..*,***//*/***/...... ..../,. .. . . ##%%%((%(&&%((../*,/(%%%(#(/((#(# 54 | (#%(#(((#%%%/*##///,,,(%#%(#%#####,.. .#%#/,,....,.,.,*,..,,..... ..,,,,,. . . . #%%(%#((.///./**,.,%%(#//(/(/((/ 55 | &#%##%((#,**(%#(*/**(/#(%%%%###,.. . .(%%##*,.... ...,...... ....,,,,*,.. . .... /*,..(,..*,,*.,,,%(//(**////*// 56 | ((((#((((%##(#/((***,,,(,(#(,,.. .#%%%&&#*,....... ... ..,***,,,,. ... . ,...,. . ..**#(//#%*(#####//(/***(/(/// 57 | /*//*##%#/%##/*/#((//(/***,,. ,#%%%&&%%%#/,*.. . . ..,*,*,**,,. ... ....... ..,,**/#/(%#////**//*/*.. 58 | (/(*((/((((((/,*(#//**//,... .. *%%%##%%&&%##%##/*,,,,,.,,.,,,,,,**,,...... .... . ..... .*. .,.*...,(/(,/////*,, 59 | *,,*(((/*(*((/*/*/**//,.... ....#&%%%%###%%%&%%%%%#(#((/(//,**,*,*,**,,,. ... ... .. . . ,.... , , . .////**. 60 | /**///**/*((*/*/((((/..... ....%&%%%&&%%%#%#%%%%%%%#%%#((/((/***/**,**,... ...... .... . . .. .. , / 61 | *,*,,///*/*/(*,*/*/,..,.. ..,%#&&%%##%%%%###%%%%(((#%%(((##(*/**/*//, ...... ... . ............,...,. . 62 | *,*,****/*///**,,.........((%(%%%#%%#%&%%%%#(#####%%%((/(((/(/***** ........ . . .... .,. ,. . 63 | /**/*//*** ,,,,.... .... .... *%%##%%%%%%%##(**(###(////*(/(///*.. ......... . . .... ... . .,* . . 64 | ***** ,,,.,........,.. . ,%#%%%#%((((/(///(/*/(/(((/#,... ...... . . . ... .. .. . .. 65 | *..,,,,,,,,........... . .. .#%%/(((%###(#(/((#(((((. . ....... , . . 66 | ,*,,..,,,,,... .....,* .... ..##%%%%##%%%%%#####,... ..... . . 67 | .,,,,,..............,,. ... . . ... .. ..... .. .. . . .. .. . . . 68 | .................. .,,*,. .. . , . . .. .... .,.. ... .* .. . . . 69 | .,,,... .. .......,,,,, . ,. . . . .. .. . . .. 70 | ......... .. . ,,****. . , . .. .. .. .. . ..........,,.... .,.*#/**#/#(/((#//** 71 | ....... . .. . ,.***//. . . . ... . ... . . . .,,////*//%%%/*(%%*#*////(///*//******** 72 | . ..,. . . ... ..*(*/// . .,. , . . .* /,/(/,*//**///*///((/////*////*/(////(/(/,. .*. 73 | . .. .., . ...,**(*** .. . . .%/%%(%,*(*((,. .,.** *////#( #/*//// ./ . . 74 | . . .,,,***///*.. *,,,. . .,#/%(%((%,////( , ** . (////( (*.,#*//*//,**,*,* , 75 | . .,,**.*****/...,.,/,..,, , ... ..((/&/%(#(%%*(/**/. /,/,//*/(#*//(., #(/////(//**//,* ./ 76 | . . ,. ,//******,.,,,,*,*,(,, . . .,/%(%((##((%#//*//***.**,//***///////***//////(((*///*** / 77 | . . ..,**/****,/#(/*//*,,, .. . **.%(#/#((#(%(%(/(/(** .**/*//*#((////////(/(***///*/*/*,* ( 78 | . . . ,,,,**,./*(/**,,,*...... , . .. /..%(#/(*/###(%*(/*//. ,*////(///*///( ,,,,/*&*/****,/(., .( 79 | . ,.,,,,**,,,,/*.*,... . * *,/#/#((/((###%*((*((///#,//,/*&#%/*(/# .,**,#&/*#(*(**/, / 80 | . .. ..,,,,,,,,.,*,,,,*....*,. . . ,,##((*#/%##((#,((*//. #***//***/***/(*. . .##/*#%%//,*/.*, ,, 81 | . .,#%#((///**///*/*/*,/,,. . /.#*#(/**##%##(,(/**(, ,*(*#%&(/#%#%// **,*(/(/////(//*/*//// 82 | . .. ./(//*//,,,,,,,,,,,,,/*,. . ./.(///*/(////(/,*/****/*.*(/.*/***///// */*,*,/*///*/*,*/*//** 83 | . . ,/((#((//**///(/*//*,**,.. . . . . ,(*/*/#///%/#/#(,/*****((,/*////*/*/,/, / ,*///,*# .** 84 | . .,%##%#((//****,,,,,*,(*,. . ,///**/*//(/%(%//(//*/#,.//***//.. (,, .,, #//**.**..,./, 85 | , . ,#(,.,.,.,.,,*******,*,,. . . ,,*/*#/(/(#(%((//(*/# . ..#/****.*/%(((., .#*,.***,*..***, **, 86 | . *(*/*,*,,,,,,,*/(*/*,,,. . . %*(/*/*#*(#(%(#/(//*, ,*, (*/**,*,.#//% ,/**(%(*//**(*/,*/***, 87 | * /,(((**,,,,,*(((//,,,,. ..#****#*((#%(%//(**/#*//**/**,/*#%***(. *,%%%/(%%(//*//***,** 88 | . . /((%((/,,,**//**/,,,.. ./,#,#*/*/((##(%*/(*///*///*#//**#&&,,*/ * */*#&#,,,/*./#(** */, 89 | . .#(,##**,,,*/****,,,. . ,*./,#*/(/*/##/#//**//**/(/(/*%&%(%%*,,, .*//#/%,//////(/( ./* 90 | . ,. ,//((/*,,.****,,*. . .. ,../,/*(/,//##/(*#////(%#/*,//**,/##**/, ,*,.****,///*/(/(#,/*, 91 | . . . .. ...//*,,,,,,**,,.. . /,//*(,(//(/*(/.//*/*# (////*//,(/,(,. /*,*//***/#*.***/ ,*, 92 | .... . ...,***,*,,,,.. ... . . . ,.,//*(//#///**//****,(*#&*/*(/,#/(%**, /*//,**//**///*/# ./, 93 | . . . ..,*.*,,. . . .. *(/**,***(.///#/*/.,,/*. , #*(/##/**,*,***. ./,(,,**//****//*(*.,*. 94 | . . . . . . .. . . ..,, .**////**////****.,*(** *.#*%////,#/****(#(/*/,**//*//**/(,... . 95 | , . . ,. . . . . . .. , (,/,**,**/,,/////,,//,...,,***//*///**//(/*/,,,,...,.... ... . . 96 | . .. ., *... . .. . .. *,,,,.,,*/////(##(((**,.,*,,**,,. /*. .*...,,..,.. ,. . ,,..., 97 | . , ..,,, . . . . . *,,*./.**,*,/((#(##%((((/,.,.,..,,.. .....,,,,................ 98 | . * .. . . , . .. ,,.,,/*/(*/#(//(*((*///*///*.,... .., .., ,. , ....,.. ,,.....,.... 99 | . , . .,. . .. ,. ,,,*...,***,,*/**/(((**//(/***//**,,.....,,,.... .... . ....,.... ,..,. . 100 | *.. . . . . ... ,.**, . . . ,,,*///((//*//,**/***,**,,........... . ,. .. .. .. . . .... . 101 | . . *.. .... ... ... . ...,,.,*..*,**(((*///***////**...*...,.,. .... .,., . . .... . ...... 102 | . . . . . . ., ,,*,*,/*/**/(//,*****,,.....,...,,.....,. . ...,.,. ... . ... . 103 | ./ ,, .,, ,***,*//**,/****,............,......... ,...,.. ... .. .. 104 | .. . . ,.... .... ., ... . .........,.............,..,,.,, . .. .. . 105 | * . .. . ..... . . .... . . . .. .......,,.,,,,,. ....... .... .. .. . .. 106 | . . . . . ..,/, ..., . . ... . ... ,.................. ...,.,... .. .. 107 | ..,,*. .., ,/*(*,,.,**..* .,,,,./*,,. .,. ,.. .. . . ........,,..........,.,.......,......... .,* 108 | 109 | hodegetria 110 | ---------- 111 | 112 | >>> from pytholic.icons import IconAscii 113 | >>> icon = IconAscii() 114 | >>> print(icon.hodegetria()) 115 | ,*/**************/////////////////*****************************************************///////////////////////////////// 116 | *.....................................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 117 | *..,//////********//////*******////*****//*//**///***************///////////////**/*///////////////((////((////(((###*,, 118 | *,.,//////////////////////////////**/*//////****////////////////////***////////////////*///////////((((//(((((((####%*,* 119 | *,.,/ .*//////////////////////*/*,**/*,/**////////////////////////////////*///**////**.//(/(////(((((((((((((###%%((,,,* 120 | *,.,/ . *(///////**///////////,*/**//**//////////////***,,,**////////////(//**,/,///(/,,**/(*,,,((((((((#######%(* (.*,* 121 | *,.*//..,,./*(/////////////////*///*///////////*....................///////////*((//(, .*(*//(((##((#(######%(.,...,%*,* 122 | *,.*((/,.,,.,.*(/(//(///(/*///*///////((//(/....... .......*,.,....... ,(((///(*/*(/((//,#(((//#(*(##(/%%%((,,,,..*&%*,/ 123 | *,,*//((/..,.,, /*/*,*..*/*//**/*///////(*...................,............(/((/(///*(//((,((/#*,,,,,,*#(%#*,,,,./%%&%/,/ 124 | *,,/(((((#* ..,./*/,,/*.*,/(*/(*//////(/,.,.,.,.,,........................ /((((/(((/(((((,(/((***((**%#%%/...,%&%&&&/,/ 125 | *,./(((((((/ ..,,/./**,*((///**/((/((/(..,.,.,.,,,,.,***,,,,,,,,,,,,,,,... ./(/(/((((/(((#/.,(/#((,*/(,*/,,.,#&&&&&&&/,/ 126 | *,./#(##((((((,....,/,/((*....,(((((((,.,...,.,*,***,,.,,....,,,, **,.... ,((((((((/((((,, ,../#,,*,//(,%%%%&&&&&&&(*( 127 | /,,(#######(((*/.....*/.** . .(((/(((/ ,.*,*,,,,...,*//*//(#(////*...,**,...(((((((((/###.,* ..,,(,,////**/%&&&&&&&&(,( 128 | /,,(%#######//**,..,,,***..,,/(((((((,.,,,**/, ,.,,,,,,,***,,, ,////**,..,,..(((((((#(/###%/ ,...****(///**/,#&&&&@@@(*( 129 | /,,#%#%##%/**/***, ..,*///////((#((((..**/**,..,,*/(#((*,*/*,,,,(/,,. ,*,*..,###(##(##/##%%(**./**//((/****///,#&&&@@(*( 130 | /,,#%%%#/**/////**/,//**/*//**#(#((((..**/,..*,,*////((((((((/**/.,. ,,,.**.*########(##%%%*///**//**//(//**(******(&(*/ 131 | /,,#/////****/****(*/*/******(#(##((( .//,..*/,,**///////////**(,(*,.,....*,(##(((###/##%%/*///*****//(*(***//***/(/,(,/ 132 | /*,%%#**(*//*/*/##%##%***(#((#*####(( .**.....,********////***/./(/**..,.,.((##(####/###%%(**,./(((#%%%/((/**/(/((*/**,/ 133 | /*,%&%%%&(#%%#%%##%%%%#####%###/###(# **, ...,,,******////(*/,.*/**..,.***#########*##%%%#%%(%%%%%&&%%&%&%%%&&&&&&&&&#,( 134 | /*,&&&&&&&%%%%%%%%%%%%%%############# /. .. ,,,*****//*/((,,,***,.,,.*/(////#(###/(/((//#%%%%%&%&&&&&&&&&&&&&&&&&@@&%,( 135 | /,,&&&&&&%%%%%%%%%%%%%%##%########/##.**, *,,,,**///***,,,*,.. ./(##/(((##(#((#/(%####%%%%%%%%%%&&&&&&&&&&&&&&&&@&%,( 136 | /*,&&&&&&%%%%%%%%%%%%%%%#%#%%%#%%###/..,*, *(/,,,,*//((*,,,. *(((##/, ...,*(######(##%%%%%%%%%%%&&%&&&&&&&&&&&&&@&%,/ 137 | /**&&&&&%%#%%%*(///((/#*/##///%#%####..../* //(//*,,,,,,..,, ,##((*..,,,**,*//,%##/(/(#%%%%%%%%%%%%%%&&&&&&&&&&&&&@&%,/ 138 | /**&&&&&&%%%%%%%%%%%%%%%%%%%%%#%#%###,....*,.*///////****,,,.,####,,.**,.*/##(///*(#####(#%%%%%%%%%%%%&&&&&&&&&&&&&&&%,/ 139 | /**@&&&&&%%%%%%%%%%%%%%%%%%%%%%%##%/ ....,,**//*********,,*,.(##%.,*,.*,*///((/*,.,###%#(#%%%%%%%%%%%%%&&&&&&&&&&&&&&%,/ 140 | /**&&&&&&&&&&&&&&%%%%%%%%%%%%%#,.,....,,.,,,,***///*,**,,,,,./*##....,,.,*//,,./*(,/####(#%%##%%%%%%%%%%&&&&&&&&&&&&&%,* 141 | /**&&&&&&&&&&&&&&%%%%%%%%#* ....,.,.,.,.,,,,*,*//**//**/*****/%%##....,,,,**##((//*,/##((#####%#%%%%%%%%%&&&&&&&&&&&&%,* 142 | /**&&&&&&&&&&&&&&&&%%%% .,,,,,,,,,*...,,.,,,,*..*,,......,....,##((,,...***,*//////*(##(#####%%##%%%%%%%%&&&&&&&&&&&&%,* 143 | /**&&&&&&&&&&&&&%%%%*..,,,,,..,..//.,..,,,,,.,...., ../. ,...,,.*#####((/,,,,,,,**(#/**,*/(##%%#%%%%%%%%%%%%%&&&&&&&&%,* 144 | /**&&&&&&&&&&&&&%% ....,**,**/,,,.*.,...,,,*.//,...,..*.....,,*...,(###(##/*,**/////(/*/(/(((*/%#%%%%%%%%%%%%%%%%&&%%%,, 145 | /**&&&&&&&&&&&&&..,.,,, *,,/(((/,*..*.,..,,*.****... ... . ..*...,...,...*,**,,***//.#/,/,(/(//*(%#%%%%%%%%%%%%%%%%%%%,, 146 | /,*&&&&&&&&&&&(...,*,,,, .**,//*..*,*.,....*.*,,**,..... ...,*../..*,,,...***,,***,.((**#/*(/*/(/*%%%%%%%%%%%%%%%%%%%#,, 147 | /,*&&&&&&&&&&/........ ,*,..,,/**..,**,,.,/.//,,.,**.... .,..,*,**/*/,.,*,**/*,,,*((//(/%(/*(/(///*#####%%%%%%%%%%%%%#,, 148 | /,*&&&&&&&&%,,,.......*,*,*.,,.*,,,..,*,.,/*,*,,...**, ..,..., .,*,,,,,..,*,**,,/*//(/#//#/(**//(/*/*##%#######%%%%%%#,, 149 | /,*&&&&&&&%/,.,..,.....,,,,/..*,.*,,..,*,**,.*,*.....,*....,/......,...*(*(****,,*//(/(%(/////*//***/,*###############,, 150 | /,*&&&&%%%(,*,,.,,.......*,/*,.,..,.,,..***,..,,,......,../*....,,,,,*(,/,,,***,,*/(##(//((///***/*//**,##(##########(., 151 | /,*%%%%%%%.,,,.,,,........*/,,*..,....,,.,*,....,,,....**,/(((//(/**/,*/,/,(/,,**,,*#(///(//**,*/,,,*/*//.(###(#####((., 152 | /,*%%%%%#/..,.,,,...........*,.*..,.....,..,,....,,,.,**,//*/**,/(*,/*,/.,#,##((//(/*(/*(***,,,,,///(///**,#(#((((((((., 153 | /,*%%%#%% ..,.,,....,........*,..*..,....,...,,....../*,,****/(*.**,,*,*,/((((((//////(//**,*////(/*//*****,((((((((((.. 154 | /,*%%%%#(....,,,..............,*..,, ,.........,.....**////((////,*,,,.///(/((/////*//*/*/**/**/*,,,,,**,,,*((((((((((.. 155 | /,*%%#%#/..,.*,,................,,..,...........,,..,*/////////**,,.,*/////(*///////*//**,,,,**,*****,*,*,*,/(/((((((/.. 156 | /,*#####*....*,,.....,............,..,,............,**////****,.,*,,,******/*(/(((//*,**/*,*(**(**/*,,//**,,//(((((((/.. 157 | /,*###((..,.,*,,...................,.............,,,,****,,.,,***,**/*********,,,,/,,****,,/**(,*(*,*.**//*../////////.. 158 | *,,((((( .../****,,,.................,......*(****(/*,,....**,*,,,****,,,**,,,,,**,*,,,,,,,*,(,*/,*(/,,,,.,,..(///////.. 159 | *.,((((*...,*********/*,...... .......,**/,*,********,...,,*,*,,,*,,,*,*,,,,,,,,,,,*,,,,,,,,***/,*((*,****,....///////.. 160 | /.,((((,.....**,.,.,,*,,,,....... ,/**,,** *.,******,,..,,*,*,,*,,,***,,*,,,,,,,,,,,,,,,,,,,,,**,//,,,**,...,..///////.. 161 | *.,((((.. .*,/,,.,.......,,,,...,.*,...,*/,,., .,***...,,*,*,,,***,*,,,,.*,,*,,,,,,,,,,,,,,,,,,,,*,.,. ...,*. .(////*.. 162 | *.,((((.,*,,,,,.. .*,,.. ,*/.,,.,,,...,,**,.... ......*,,,,,,,,/**,,,*,*,*,,,*,,,,,,**,,,*,,*,,,.. . ....,, . *////*.. 163 | /,,((/(,,,.,.,,......*,,*,,.,....*,...,,*.**,. ....,*,,,,,,,**,*/*,,*,*.,,.*,*,,,,,,,*.**,,,*,. .. ....*..... ..////*.. 164 | /,,(((/*,,......,. .,*,.*,.,,. ,.*....,,*.***.......,**,,,,*/*//**,,,,,,,,,*,,,,,,,,****,,,*,.........*, .... . .////*.. 165 | /.,((((*., .*,.. .*,,...,..,...,.,...,,,,......... ,/*,,,,*,,,,**,,,,,,,,,*,,*,,,,,***,,,,*,,. .. ..,,... ..... *///*., 166 | /.,((((.,.,... .,,.........,.........,.,...........,,,,,*,****,,,,,,,,,,*,,,**,,*,,,*,,,,/*,.... .,,..,......... .///*., 167 | /.,((((,..*, ,,.........,....,.,...,..*.... .......,,,,*/****,,,,/,,,,**,***,,,,,,**,,,,*.... ..,. .. .... ..... ///*.. 168 | /.,((((..... ,..........,.....,.,......,...........**,,/**,,,.,,,*/,,,******,,,,,,,**,,,,,......,. ,............. *//*.. 169 | /,,((((.....,..........,........,..,..,.........../,......***/*/,,****...,*,*,,,*,,*/* ........,..,....... ,... ..*//,., 170 | /,,(((/...............................,......... .... ..,***,,,,****,**,..*,,,,,*,*,..........,..... ..., ........,//,., 171 | /.,(((,...............................,..............,,******...............,,**,,,......... ,.........,..,... . .//,., 172 | /.,(((,..............................., ..........,*,,,,* ..........,... .....,*,........................,........ //,., 173 | /.,(((................................,..............,.,........,. . ................. .................. ...... //,., 174 | /..,,*................................................... ........ ........................................ .. ... */,., 175 | ((//////******,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,...,,,,,.. .......................... ..........................,* 176 | 177 | our_lady_of_guadalupe 178 | --------------------- 179 | 180 | >>> from pytholic.icons import IconAscii 181 | >>> icon = IconAscii() 182 | >>> print(icon.our_lady_of_guadalupe()) 183 | &&&&&&@@@@@@@@@@@@@@&&@&%%&&*,*,,*,/*/*/*,.,,,,.,**,,,,,...***,*/***,,,*,*,,,,(&&&&&&@@@@&&@@@@@@@&&&&&&&&%%%%%%###%##&@ 184 | &&&&@@@@@@@@@@@@&@@&&&&&&(,,**,*,*/((,**,.,.,,,,,..,*,*,,,..,,//*/*********//**,*,(%&&@@@@@@@@@@&&&@@&&&%&&&%%%%%#%%##&@ 185 | &&&&&@@@@@@@@@@@@@@@@&@&&/,,*,***//((*,,..,,*,,,,,,,.,*,,*,,.../**//**(//*,,***//*,*#&@&@@@&&&&&@@&&&&&&&&&%%%%%%%%%%%@@ 186 | &&&&&&&&@&&&@@@@@@&&&&&%,,*******///,,,.,,*((((##(/,...,*,,,,...#**((*,*/***//,*(/****#%&&&&&&&&&&@&&&&&&&%%%%%%%%%%%#&@ 187 | &%&&&%&&&&&@&&&&@&&&#*,*,,**/*,*//*/,*,,./((((#(#(((/*..,,,.,.,./#,*,//**///**//((//**//*#&&&&&&&&&&&&&&&&%%%%%%%%%%%#&@ 188 | %%&%%%%&&&&&&&&&&&&&&/**,,**,**////*,*.,.*(/((//((//(((,.,,.*,,../#(*/((/**////*/((////,,(&&&&&&&&&&&%%%&&%%%%%%%%%%%%&@ 189 | &%%%%%%&&&&&&&&&&&%/,******/**//**////(,..*///(/(((##(//,.*,.,.. ,(%(*,*/***/(////(((((/**(#%&&&&&&&&&&&&%%%&%%%%%%%%%&@ 190 | %&%%%%%&&&&&&&&&&&&%,,********//(/*,*,***..*(/(((#####(//,,*,,,,.,***/***((*,/(///*/((//**,,*//#%%&&&&&%%%%%%%%%%%%%%%&@ 191 | %%%%%%%%%&&&&&&&&&#/*,****///*///***/((/., .,///(//(((//((,****,,.//*(#*,*/(//*/((***/(((*/,...(&%%&&%%%%%%%%%%%%%%%%%&@ 192 | %%%%%%%%%%&%%&&&&%,***////(//***//((((//,,*. ..*/((((/(#((/,*,,,., .,,*(((**((/**/(///(((/***,,/%%%&%&%%%%%%%%%%%%%%%#&@ 193 | %%%%%%%%%%%&&&&%%/,**//*//*///((((//,.,,**,,..,..,**/((###(****,.,,....,/%/,,*/((/*/(/*//((//*,,(%%%%%%%%%%%%%%%%%%%##&@ 194 | %%%%%&&&%%%&&%%(/,,****//(((((((//*/(#%&#,.,,...,*,**///((///*,,,.,,,,,,.../%(,/((/,*(##(*((((*,,/%%#%%%%%%%%%%%%%%%%#%@ 195 | %%%%%%%%%%%%&#,,,**/////((#((*,*,*/(##. ,,./,..,**(,*//****///,*,.**,,,,,,....,,/##(*((#(**(((/*,,(#%%%%%%%%%%%%%%%%#%@ 196 | %%%%%%%%%%%%#/*,,,*//////////(#(##%*....,,,,,* ,,*/#(/(/((////**.,,,*****,,,,....**#((*,(#((/,/(//*,,#%%%%%%%%%%%##%%#%@ 197 | %%%%%%%%%%%%%/,,*///**,**/(###(//,...*,,***,,,.,*//(,/,*/(*/**./**,.,,,**,,,,,,,..,,*(#(/(##(((**/*,,*#%%%%%%%%%%%%%##%@ 198 | %%%%%%%%%%%%(,,**//((((//(((**,, .,.,,,*****,,,,,***(/(/(/*/**//(/,.,,,,***,,,,,,..,/*(#(/**((/(/*,,.(%%%%%%%%%%%%%%##%@ 199 | %%%%%%%%%%%(*,**/(#((((((/***/(,,...,*//****,*,,*(/(((#((/(***#(/,,*,*****,,,,,,*,,. ,**((#(/*/(((/*,/%%%%%%%%%%%%%%##%@ 200 | %%%%%%#%**,***/*(((///**,,****....,,*****/****.*//%((((*#(/*,*(,,,,,,.,,,,,,,,,,,,,,.*(*/(##(,.*((((/**##%%%%%%%%##%##%@ 201 | %%%%%%%%*,,,***///////////(#%*...,,,,****,,**,,/*/((((((///,,/*..,,,,,,***,*,,,,,,....**,**(##((*//((//**%%%%%%%%%%###%@ 202 | %%%%%%%/,,,,***/*/*///*///(#*.,.,,,*,,**,,*,..,*#*/((((/**,.,,....**,**,,,,,,,,,,,,... ##///(#(///**,**,***(#%#%%%%####@ 203 | %%%%%%%/,*,,,,**/(/*///(##%*,,,,.,,,,*,,*,,*/(.,/(*/(((/,*.*.,.,,..,,***,,,,,,,,,,,,,..*#**,.**(/((((/**,*,*#%#%%%#%###@ 204 | %%%%%%%%/*,,***/////(#((##(..,,,,,,**,*,,**./#/(/((*/#*((#*/.*/(*,*,**,,.,,*,,,,,,,.....##(//*,/((#(///*..,##%%%%%%%%##@ 205 | %%%%%%%%#*,,//(((((((/(/*,..,,,,,,,,,,,,(*//.(#/##(*./###(//,//(**,,*****,**,,,,,,,,.,,.,(****,//((((//*.,(%%%%%%%%%%#%@ 206 | %%%%%%#%/*,*/((((((/**/*(.,.,,,,,,,,,*,.(*////((/*#*.**//((**(#/(,*,,*****/***,***,,,,,. (%###(#(///(/(/***#%%%%##%#%#%@ 207 | %###%##//*,*//***//**//(, ..,,,,,,*,*,*.,**,**,(#/(*.(#(##,*,/**(*************,,***,,,,. /%##((///,,*/(/*,**#%#%%##%%##@ 208 | #%%###(***,*/(((######%% ..,*,*****/*****,*/*((*.,. ,../*,,/*,.*/,,*******,/*****,,*,,...*%%%%%((((((/(/*,**/#%%%#%%###@ 209 | %%%##%%/**,*((((/(#((##( ..,,,,,,,*,,,*,,,.,.,*. . .. ****,..**,,,,**,****,***,,,,,*,,,..,#%#####(((((//*.*/#%%%%%%%%%#@ 210 | %%%##%%#,,*///*,/*/*,,,, ..,,,*,,,*****,..*,/,........./**,*.*/*,,..**,,****,**,,,,,.,,,..///(((#((((((//,*%%%%%%%%%%%#@ 211 | %%%#%%%#*,,//////((###%% ..,,,,,,,***,**.****.....*.,. /***,**#((///***********,,,*,,,,,, /((######((///*,,#%%%%%%%%%##@ 212 | %%%%##%/*,*/((((((((##%%*...,,**,,***,,*,,,*,,, ..* .. /***,**##(((//**********,,,,,,*,,,.,,****((((((//****#%%%%%%%%##@ 213 | %%%%%##/,**/****/#(#/*,,,...,,,,,,,********/***,,,*/,,,/***,,*(###(//(,**,*,,***,*,,,*,,,,(((#(#(((((//**,,,*#%%%%%%%%#@ 214 | %%%%%%#/,**///(///(/((((/ ..,,**,,,*,,**,,*****,***/,(##(*/,,,/(////***,*,,,**,,,,*,.,,,,,,,,,*,,/#(((((/,,*/#%%%%#%%##@ 215 | %%%%%##****/#(#(((####%%%.*.,,*,,,,**,**,,*/*,*,**//*(#%#*//***,**,*///,.**,,***,,,,,,,,.*///**//(#((/(/*,,/(%%%%%%%%#%@ 216 | %%%#####,**/((//((#####(#,..,,,,,,,,,**,**/**,****(/,(#((((((#((*##(#/*,*****,/*,,,.,,,,.,,,.,.((####((/***/#%%%%%%%%##@ 217 | %%%%%#%#,**///*///******,...,,**,,,,*/*,,//***,**,((*##%%#%#(###%#%((**,//#(,**,*,,.,,,,%&%%#####((((((//**##%%%%%%%%%#@ 218 | %%%%%##/**///(((///////((...,,*,,,,***.**(/***,***///##%/#(%#(#####%(/.//((//,*,,,.,*,.*(((#(##(((((((((///(#%%%%%%%%%#@ 219 | %%%%%##*,,/(((((((###%%%%*..,,*,,,.**,,*//***,,**,((*###(#%((##%##%#%*,*/(/*.*****,.,, (%%%%%#######((#((**/*#%%%%%%%%#@ 220 | #######**,/(/(((((#####(#, .,,,,,,**.,,*/**,,,,**,///(###((###%(((/##**/(/,,*****,,.,,./######%#%##(((//(***(/,/#%%%%##& 221 | %#######,,/////*/*****,**. .,,,,.**,,***//*,,,,**,(/(####((##(##(%%#//*//,,**,*,,* ,,, //*(/###(((((((((/***///###%%###& 222 | %#####%(**((#(((((((####%, ..,,,** .,*,*//*,,*,,*,(**##(/#%##((%#((#(*/**,,*/*,,,*.,,,,/*////((/(((((////**,,#%%%%%%%%#& 223 | %####%(***/(#(((((###%%%&,.,..,*, ..,,,*/*,,,,,**,/,*(**%(((((#(%(%##/**,***/**.,**.,.*,*,,**///#//(#////,,,/%#%%%#%%%#& 224 | %%%%%##/**/*****//**,***/....**. ...,.,****,*,,,,,(*((/#####((#(((##(*****////*,,,,* .######(%(###(#(/(/**,*/%%%%%#%%%#& 225 | %%%%%%%(**//(((#(((//**,* .,,,. ..,,,,,**,,*,,,*,*,//###%%#((#(((((((,*///////*,,**..//(((#########(////*/*/(#%#%#%%%%& 226 | %%%%%%#////((##((((#(/**/..,.., ....,,,*/*,,,,.,*,/,,/##%%%###%%(%%##(***////(/*,,,*,/%&&%%%%#####((((((/****/#%####%%%& 227 | %%%%%#/(/**/(#######%#%%(,. .,, ......,,//,,*,,**,*,*/(#%###/(((#%(%#((*****////*,,,*/%%%%%%%%%####(((/(/****%%%%%#%%%#& 228 | %%%%%%##////(#####%%%%%&%....,,.. ..,,,*/*,,,,,**.,,*(###(##((#(/#&%(((*****//(/*,.,*,*//%((//(//(###//((*,*(%%&%%%%%%#& 229 | %%%%%%%%#,,*******///*/*//,,,,,.....,.,,**.,,,,,**,,/(((#%%###%###(((##***,**/((/*,.,*,**//(###%#%(///(((/**,#&%%%%%%%#& 230 | %%%%%%%%/,,/#######((//////**,,. .,,,,*(*,,,,,,,,,,/(((####/((###%#(#(/,*,**/(((/*,,*/,(//(/(((((#(((((/**,**/#%%%%%%#& 231 | %%%%%%(***//(###%#%#(((///***.,. ..,,.,****,,,,*,,.*(((#(#%(/(#%((((/##(,*,***/((/*,.,*,&&&%#######(((((**,***(%%%%%%%#& 232 | %%%%%%(****((#####%%%%%%%&&& ,,. ...,,,//*,,.,,,*,,*/#(/(((/*###(((#%(((,,,,,*/(/((*,,,,.###(((########(****((%%%%%%%%%& 233 | %%%%%%%/,,///(((((####%%%%&& ..*. ....,/*,,,,,.,,.,*/(/*//**(***//((#(#(*,,,***//(*,.,,,,,*,,**/(//(#((/*/,(%%&&%%%%%%%& 234 | %%%%%&%%#/((/(/((///***//*// ..,, ,,.,,/(**,*,,,,,,**/(/,*,**,,*/(#(##(//.,,******.,,**.,,.*/(((((((##(((((%&&&&&%%%%%%& 235 | %%%%%%&&&&(**/#####%%%%%%##(..,,. ,,,,*((**,,,.,,,,*/,/((,,,,*/////###/((,,***,*..,,**.,*,,*##,,****(/*/**/%&&&&&&&%%%#& 236 | %%%%&&&&%&&(/(##%%%%%%&&%%#(..,*. ,,,,,/**,,.,..,,.//,#(/,,,.**((##((**#*,,,,,,,,..,,,,,,**,/**/*/(////****(&&&&&&&&%%#& 237 | &%%%&&&%%%%(*/*//((((#%/%%%&*,*,...,,.,*/*..,,..*,./*,(#/****/////((/*((/,.*..,,,..,*,,,,**,/*//*(((///*,*/%&&&&&&&&%%%& 238 | &%&%%%&&&&%(/#(###((((#,,%%&,*,,,..,,,,*(*,,,,..,,.**,((/**,**((//%#(*#(**.,,,,,,,..,,,*//***##/*###//***(%&&&&&&&&&%%%& 239 | &%%%%%%&&%#(/(##%%###//,.,/((**,,. ,.,.*//,,.,*,,/,,(/((/**/(/(((###/*//*///(,,,*,...,,,*//*.#(,.((/(****/&&&&&&%&&&&%%& 240 | &&&%%&&&&%(*/(((#%%%%%&(,.*(*/*,,,.*,,.*(#(/*,.,,,,,/*(/**//(/*/((//,*((,(/(/,....*,***,,,*,,(.,,((((/***(%&&&&&%%%%%##% 241 | &%&&&&%%&#///#((#(/#%&&&.,. ,//*,,,,,,,,,,*(//,.,,/,***/////*(//(((/*/,(,/(//,,,.. #%###(///, ,.*(#/**(%&&&&&&&&&%%%%#% 242 | &%&&&&&&&%%#(/(/(((///(#%*...,(//,..*,,,.,,(#*#(,,,,,*,//*(/,(####(,(/,/*/((*,.,,,/*/(##((*./.,/%##((*(&&&%&&&&&&&%%%%#% 243 | &&&&&&&&&&&&&&&#/(%%&%#(((,......,*./*,**/**,,,/(*...,,(////**(#(*,(#*,//(/(*,.,./(##((/,,,,../###(///#&%&&&&&&&&%%&&%#% 244 | &&&&&&&&&&&@&&&&&//%%&%&%(/* .,,*,,* /***/*///*//*/**,,,*,/**(((,///.(#/*/(#/,,,*,,/#( ..,// (%#((/**//#&&&&&&&&&&&&%%#% 245 | &%&&&&&&&&&&&@@&&&(#/#&@&&&&#***,,***((*((///((*///*,,*////**/**,*///((//(/*(,*/** ,/,...*,.%%#%#((/#%&&&&&&&&&&&&&&%%#% 246 | @&&&&&&&&&&&&&&&&&##%&&%(%&%.*****//***,,*/*/(#/(##(*(#(//(/**(///(**//*/(##(,*.*.. . ....###///((&&&&&&&&&&&&&&&&&&%%#% 247 | &%&&&%%%&&&&&&&&@&###&&&%(((*/****/*(*(*,*,**,,,//(//((/((//***(*//##(####(#(/*,.,,,,...(&%%##%((%&&&&&&&&&&&&&&&&&&%%%% 248 | &%&&&&&&&&&&&&&&&%%&%#&@&%%/*////////*,**//*,**(//**//*//*(**/((####%###%%#(#(##((*.,,/##%#(##(//%&&&&&&&&&&&&&&&&&&&&%& 249 | @&&&&&&&@@@@&&@&#%&&&&@%%&%*////(///****#%#((/.//#(///***,*//*(#*####((%%(((//##(#*((*(%%%/#%##(((&&&&&&&&&&&&&&&&&&&%%% 250 | @&&&&&&&&&&@&@@@@&%%&&&&%(,/(/////*/(####,,********,,*,**/****,,//******,*(/##%###(*##%%%#%#(#(((##%&&&&&&@@&&&&&&&&&%%% 251 | @&&&&&&@@@@@@@@@@&@@&&%#&&&//((/((//%#(###(////******,,,,,,,,**////**,.,.*/**(/(##%/,#%%#%##(((%&&@@@&&&@&&@@&&&&&&&%%%% 252 | @&&@&@@@@@@@@@@@@@@@&@&@&%%&((/(((((/*(////*/(#%((##/*//,,***.,*/**((,,,*****##(//(*/#%(&####%&@@@@@@@@&&&&&&&&&&&&%%%%% 253 | @&@&@@@@@@@@@@@@@@@@&@@@@&&%##//((*/(*,*/(*(*/((#((/*,,,/#%#/(,//(*(((,,,*(/*,.**/,(//(%##((/%&&@@@@@@@&&&&&&&&&&&&%%%%% 254 | @@@&@@@@@@@@@@@@@@@@@@@@@@&&&%%#%%##%#,,,*,(/((#(/((//*##**%##*****,*/**(**,..*##%##%##/**(##%&@@@@@@&&&&&&&&&&&&&&&%%%% 255 | @&@@@&&&&@@@@@@@@@@@@@@@@@@%(#%##(*,*(#/,,,,***(##(((((##(#(/**((/////**,.,,,/%/,,,,,,,,,,*%&%&&@@@@@@&&&&&&@&&&&&&%%%#% 256 | @&&@&@@@@@@@@@@@@@@@@@@@@&%/*******/,*%%#**,,,,,*///#((/((***//*/**,,,,,.,.**##,,,%&&&&&&(**/#&&&&&&&&&&&&@&&@@@&&&&&&%% 257 | @&&&&@&&@@&@@@@@@@@@@@&&%,*,/%&%&&&(,**&#(%##/,,,,*//**,*/****(,,,...,*(###(*,,,,/&&&@@&&&&@&&@&&&&&&&&&&&&&&&&&&&&&%&%% 258 | 259 | 260 | christos_acheiropoietos 261 | ----------------------- 262 | 263 | >>> from pytholic.icons import IconAscii 264 | >>> icon = IconAscii() 265 | >>> print(icon.christos_acheiropoietos()) 266 | .,... ...... . .... . . ..... . . ... .................,,,,,,,,.,,,,,,,,,,,,,,,, 267 | (((/(/*/(*////////((((///((#(/(#/#/////#(/(((((/((##(/((//((###(((/((#((#(////*/#***//*****/**(////*///////**(//////(*** 268 | #/(#(##(############%####%##############%#(#(###(#####((##%###(##(((###(((#((##((#(###(##(((((((##(//#((##(((((((((/(*// 269 | #/((((((###########%%####%######%##########(#((############((##((#((#########(((######(####%#((((##((#(#####(######/(#(( 270 | ##(#%#((/(/((##(((///(/((////(((//((###(###(#(#((//((**/(,,/,*/*(*,,,/(/(//(//(/(#/*/((((/(((((#/((((/*(((/**//,/**/###( 271 | #(/%##%#####(###%%#(########%#%#%###(#(##(#*/#&#%%%%&%&&%%%&&%%%&(&&&&&&%(%/#(((##(##(#####%(##(#(####(#%/(#%#&&(((((##( 272 | #/####%(###%%(#(%(###(####((########(/(#%#(%###*&&%&%&&&&%%%%&&%%(&%%##&&(%%#########(%#(##%%#(###%#%%#/####(*#%####((## 273 | %((#######%#%/(/(/#####(##((#####(%%%%#%%#%##%%##/&%%&%&&&&%#&&&##%%#&((#%%%&&%#%##%%#%%(*##%((##/((%&%%#((#####%(((#%#( 274 | #(((####%#####%&%%#%%##%#####(&###%%%#%###%%%#%&(%/%%#(,.,* . .*,,.*....//&%%%%%&%#&%%%%%%%#%%#####(#####((#(#(#%#((#### 275 | #/(####%#####%%%#%%%%###%#/%%%%%%%%##%((#%#((##&/., ,,..*.. .*.*,*.,.,***,*#%%%&%%%&&%%%%%%%%&(#%##%#%##%#(#%##(((%##( 276 | #/#%###/####%%%%#&%%##%##%#%%%%%%%%%%%%##%##*.,.**.,/..*/ *. .,. . . . ,(.., %%#%%&%%%&%&%&&%%&%(##(#(#(#####(%#((%#( 277 | #(###%%#(#%#%%%##%%#%/%%%%%%%%%%%%%%%%%%##, , , (. /*. .(, . /.......*%/ (..# . .&%%%&%%%%%%%%%%%%%*###(((#((%#(/((((( 278 | #/##%##%#(#########/%%%%%%%%%%%%%%&%%%##. .* * ( .(. **..(. ,//. ,*. (, .* / / /.*%%%%%%%%%%%&%#%%%%(#####(#%###(##(( 279 | #*(#%##(#########(#%%%%%%%%%%#%%%%%%%%/, ..( *.,.( ./ ./,./,, .,(. // / # * , .., /, (&%%&%%%%%%&&%%&%%%####%%%##(((/#( 280 | #/%(#%(#########(%%%%%%#%%#%#%%&%%&%%. , .,/.., .. ...* ,*(,**.,*, %.( ( * # .. (&%%%%%%%%##&%%%%&%%%##%########( 281 | #((##(&##%#%&%#%#%%%%%%%%%%%%%%%%%%% /* * *./ .*//(,*/ ./.(((#((/,. . #. ,* ,. ., #%%%&%%&%%%&%%&#%%%#((#%#((##(/( 282 | #*(#%#(###%%%(%%%&%&%%%%#%&%%%%%%%%...(,.. ,,./* *(((#((((#(((((*###(#(((/*. .*( (,.. .%%%&&%&&%&%%%&&&%%%%(####(####( 283 | #*#(########/%%%%#%%&%%%%%%%%%%%&%# *. *# ..( *(((#((((#####((/####(###(((*. * .. /. * ,%%%%&&&&%%%%%%%%%%&%###(#(#(#/ 284 | ##(###((##(*%%%%%%##%%%%%%%%%%%%%# ,/,.*. ( *((####(####(((###/#####((((((// *,. /../. .&%%%&%%&%%%%&%%%%%%#*(#(((#(/ 285 | #/(%#%####/%%%#%##%%%%%%%%%%%#%%# ,/. ,*..,./((#(###(#((((######((#####(###/(*. /*. %. ..,/&%%%&&%%%##%#%%%%#%###(((##/ 286 | #,(##%###(%&&#%%%##%##%%%%%%%%%%( ,. .(( /#((( . *#####(########(. ..,*. (#(* . .#* ...%%%%%%%%&%%%%%%%%%&%&((###(% 287 | #####%####&&%&&&&%&#&&%&#((/#/(*,. (, *(#(.,*//........((##(( ****(/.,(//((/ #,/. *//,.&#%%&&%@&%&&&&&&&&&&%#/((##* 288 | #//(##((#&%&&&%&&&%&&&&&%#@&%&&%&. * ,/. /(#*(*(/ . .#(.//##,/*(* . ,** /((((/./..( .* *&&@@&&&&@&&%%&&&&&&&%&/(#((( 289 | #/*((####&&&&&&&&#%&&&&&@%@&&@&&&..(..(*(./#((#.* . *(//*.(/(#,/.**, ,/(*,/*(((.(.., .(..%&@&&&%&&&#&&&&&&&&#%&&%(##(# 290 | #(*##/(#/&&&&&&@&&&&#&&&&&&@@&&% //.(,.. /(##(((.. ..,.*(#(((#,*(#(((#(((/*(#((*..*..%..(, /@@&&&&%@@&%%&&&%&&&&&%/%%#( 291 | #//####((&&%#&&&&&&&&@&&&&&&&&%,/..,* ../(((###(//***((#((((/#,/####((((#(#(##(**,(*../(....#&&&(@&&%&&&%%@@&&&&&((((#( 292 | (//###(#%&&&(/&&&&%&&@&&%@&#@&#. . ./(*/(.(###(#(((((((((((((/#*/(####(((#((#(((/..(%**,. .. .&&&&@#&&%#&&&%&&&&&&/(###/ 293 | #//#(##((&&&&%&&&&&%%%&&&&&@%(/ *...*.,#.,(((##((((((((((((((*(*/*#((((((((((((/, *(/,,(///,.,(&&&&%&&%&(#&&&&&&%&(((#(* 294 | #/((#%(((&#%%&&&&&&&&&&&%&%&&&/ ... ,..,((.*((((((((((((((((*(((**((((((((((/*,.(*# ...,.,**./&&&&%%#%&&%%%&&&%%#&/((#(/ 295 | #*((##(/(%&(#%%#%%#%%###%%%%%%#%,*#/*/*,.((***((((((((((((((.((,.(#((((((//,.,,,(#.(. ...., &#%%#%%#&%#%%%&%##%%(#((/(/( 296 | #//#####(%%%%%%%#%%%%%%%%&%#%%%%%/ /*.. . ,**/((((((((((*,,*,,,,//((((/*,,,... ./ /... .%%%%%%##%%#%#%%%%%%%%%#///(#/ 297 | #*/###(*(*%#%%%%%#%%%%#%%%%%%%&%%%%#. ** .,**///(((((*,,,,****/*,.,*#/*/*,.... ( ,/#%&%&%&&#%%%&%%%%%%&%%%%%*(#(((/ 298 | #/(###//*#%####%%%%%%%%%%%%%%%&%%%%// . ...,***((((,,/(((/(//*((((,*///*,,,.. . ( ./%%&%&&%&#&%(%%%%%%%%%%&%#(####(/ 299 | #**#(#///%#%%%%%%%##%%%%%%%%%%%&%%#*(///. ., ,,,,*//./#((*,,.*,,**//((**,,., , .((//%%%&%%#%%%%%%&%%%%%%#%%/(/((/// 300 | #*(##%//(%%##%&#(#%%%%%&%%%&%%&&&%&,*,,** , ..,,,//((///#(##(((#((//*/*,,,. , ..,%%%#%%((%%%&%%%&&%%%%%(##(*((%( 301 | #,/####/(%#%#%%#%%%%%%&&&&&&&%&%&%#,.**.* ...,,*(/**//(///,/,////***,,,. . ..*.*/. ,(.#%(%%%%#%%%%%&%%%%%%%##((##(// 302 | #*(#(####%#&%/(%%%%%%%&&%&&&&&&#..,*...* .,*..,.,,,***,**,*,,,,,,,*,,...,.*(. ,#(....../,/&#%%%%%%%%&&%%%%(/(%####(#(( 303 | #/((#####%#%#%#(&&&&%%&%&&&%&%%/*/(. .. **/ ,(,..*,,,,***,,*,* ..,/*,,,,,. ((# .*/*(,, ,,*/#(%%%%%%&%%#%%###(####(#(#(* 304 | #*(##(//##%%##%##(&&%%(%&&%%&%#,*(...,(.//,./###*....*.,......,*,,..,.... .(%%#*. ,,# . ../,,/%%%#%%&&%&&#((#####(*####/ 305 | #(((((/(#%%###%####&%&%%%%%%,,/.* /* #%/*.,,,%%&&%(,.,,,.,...,., ,.,.* ..*#%%%(.*,*/.&./(.. .//,,(%###%#(((######(#*(#// 306 | #*(##(*(########%%##(#(&%#/.,,*,*., %%#*,.,.*&%%&%/..,.,, ...,. ,.,,..*#%%&%%..(. *..%%*,/,*,/,(##&%###(/(/(###(#####( 307 | #/(#(#(###########(%%(#(%# ../**..#&/.* ,,**@@#&&%%..., ...... . .,.,..%&%&&&%%/( (. ,.,(...*, .#%&#%#######/######%#(, 308 | #/(####(###%#(#(##########&./*,..,&,.,, ,,#*%%%%%%&%/.,,. , .., . .. #%%%&%%%%%&,,. ,/&%#%#(##(##############(##(#// 309 | #(/#(##((###########(%#((#(#(%%%%##*..,.,.#%%&%%&&%%%%,,.,.,.*(# . .,..##%%%%%%%%%.(*.*..%%%##*//(/(###(#######(##%(#((* 310 | #*/((#(((#######%(##(#%((#####%#(%%#%,*.(%#%%%%%%&&&%/...,. .#(.... ...#%%%%%%%#%%%%%&%##%////*/((#####(####((###((%##(/ 311 | #*/##(/#(((#(####################*#((##%(&##%%%%%%%%%%. ..*.(/.. .../#(%%%%&#(#%%(#//#(((///((########(#(#(####(#&#%(* 312 | #*/((##(/,,,,*##((#(########%######(((#(//((#%%%%#%%%%##////#####(//(#%%%#%%#(*((##%##########(####(#((((#(((((#(((/(((* 313 | #,*#((#(.,.,,(#(#(##(##((####((//((##(##(%####((##(#(///*///(***(/,/(/#((#(((/######(###/#/#####(##(###(####((/#(#//(,*, 314 | #**#(/((((((#(((##%(((#%#%#%%#%#%#%#%##%#########%%&/((((#%%#%%#(%#%%&#%%%%##%%%%%#(%%%%#####%#(#(##(%%((%#((((((((*/*** 315 | #//(/##(/(((((##%#%#########(((#####(((###(###########%%#%#%##(/(###%%%%#%%%%%%###(%#######%###########(######(((((///** 316 | #(/(,**(((((((((((((((((((((((#(((((((((((((((((((/((((((((((/*/*//#%(#(((###//(#((((((####(((#/((((((((((((#(((((((((/* 317 | /*/*//*****(*((/*#**/(///*/***/*#//*(/((//(////*///////*////////*////////////*//*/////**,***/*/////*/****************,,( -------------------------------------------------------------------------------- /docs/source/api/prayers.rst: -------------------------------------------------------------------------------- 1 | The prayers module 2 | ****************** 3 | 4 | The ``Prayers`` class contains 13 methods, 12 of them return 5 | different prayers, 1 method returns random prayers. 6 | 7 | our_father 8 | __________ 9 | 10 | >>> from pytholic.prayers import Prayers 11 | >>> prayer = Prayers() 12 | >>> prayer.our_father() 13 | Our Father, 14 | Who art in heaven, 15 | hallowed be Thy name, 16 | Thy kingdom come, 17 | Thy will be done, on earth as it is in heaven. 18 | Give us this day our daily bread, 19 | and forgive us our trespasses 20 | as we forgive those who trespass against us, 21 | and lead us not into temptation, 22 | but deliver us from evil. 23 | Amem. 24 | 25 | hail_mary 26 | --------- 27 | 28 | >>> from pytholic.prayers import Prayers 29 | >>> prayer = Prayers() 30 | >>> prayer.hail_mary() 31 | Hail Mary, full of grace, the Lord is with thee. 32 | Blessed art tthou amongst women, 33 | and blessed is the fruit of thy womb, Jesus. 34 | Holy Mary, Mother of God, 35 | pray for us sinners, 36 | now and at the hour of our death. 37 | Amem. 38 | 39 | glory_be 40 | -------- 41 | 42 | >>> from pytholic.prayers import Prayers 43 | >>> prayer = Prayers() 44 | >>> prayer.glory_be() 45 | Glory be to the Father, 46 | and to the Son, 47 | and to the Holy Spirit, 48 | as it was in the beginning, 49 | is now, and ever shall be, 50 | world without end. 51 | Amem. 52 | 53 | apostles_creed 54 | -------------- 55 | 56 | >>> from pytholic.prayers import Prayers 57 | >>> prayer = Prayers() 58 | >>> prayer.apostles_creed() 59 | I believe in God, 60 | the Father Almighty, 61 | Creator of Heaven and earth; 62 | and in Jesus Christ, His only Son, Our Lord, 63 | Who was conceived by the Holy Spirit, 64 | born of the Virgin Mary, 65 | suffered under Pontius Pilate, 66 | was crucified, died, and was buried. 67 | He descended into Hell, 68 | on the third day He arose again from the dead. 69 | He ascended into Heaven, 70 | and is seated at the right hand of God the Father Almighty; 71 | from thence He shall come to judge 72 | the living and the dead. 73 | I believe in the Holy Spirit, 74 | the holy Catholic Church, 75 | the communion of saints, 76 | the forgiveness of sins, 77 | the resurrection of the body, 78 | and the life everlasting. 79 | Amem. 80 | 81 | anima_christi 82 | ------------- 83 | 84 | >>> from pytholic.prayers import Prayers 85 | >>> prayer = Prayers() 86 | >>> prayer.anima_christi() 87 | Soul of Christ, sanctify me, 88 | Body of Christ, save me, 89 | Blood of Christ, inebriate me, 90 | Water from the side of Christ, wash me, 91 | Passion of Christ, strengthen me, 92 | O good Jesus, hear me. 93 | Hide me within your wounds, 94 | keep me close to you, 95 | defend me from the evil enemy, 96 | call me at the hour of my death, 97 | and bid me to come to you, 98 | to praise you with your saints, 99 | forever and ever. 100 | Amem. 101 | 102 | angelus 103 | ------- 104 | 105 | >>> from pytholic.prayers import Prayers 106 | >>> prayer = Prayers() 107 | >>> prayer.angelus() 108 | The Angel of the Lord declared unto Mary. 109 | And she conceived by the Holy Spirit. 110 | Hail Mary, full of grace... 111 | Behold the handmaid of the Lord. 112 | Be it done unto me according to thy word. 113 | Hail Mary, full of grace... 114 | And the Word was made Flesh. 115 | And dwelt among us. 116 | Hail Mary, full of grace... 117 | Pray for us, O Holy Mother of God, 118 | that we may be made worthy of the promises of Christ. 119 | Let us pray. Pour forth, we beseech thee, 120 | O Lord, thy grace into our hearts, that we, 121 | to whom the Incarnation of Christ, thy son, 122 | was made known by the message of an angel, 123 | may by his passion and cross be brought to the glory of his 124 | resurrection, through the same Christ our Lord. 125 | Amem. 126 | 127 | saint_michael 128 | ------------- 129 | 130 | >>> from pytholic.prayers import Prayers 131 | >>> prayer = Prayers() 132 | >>> prayer.saint_michael() 133 | Saint Michael the Archangel, 134 | defend us in battle. 135 | Be our protection against 136 | the wickedness and snares of the devil. 137 | May God rebuke him, we humbly pray, 138 | and do thou, O Prince of the heavenly host, 139 | by the power of God, 140 | cast into hell Satan and all the evil spirits 141 | who prowl throuhghout the world 142 | seeking the ruin of souls. 143 | Amem. 144 | 145 | conversion_sinners 146 | ------------------ 147 | 148 | >>> from pytholic.prayers import Prayers 149 | >>> prayer = Prayers() 150 | >>> prayer.conversion_sinners() 151 | Lord Jesus Christ, most merciful Savior of the world, 152 | we humbly beseech You, by Your most Sacred Heart, 153 | that all the sheep who stray out of Your fold 154 | may in one day be converted to You, 155 | the Shepherd and Bishop of their souls, who lives and reigns 156 | with God the Father in the unity of the Holy Spirit, 157 | world without end. 158 | Amem. 159 | 160 | happy_death 161 | ----------- 162 | 163 | >>> from pytholic.prayers import Prayers 164 | >>> prayer = Prayers() 165 | >>> prayer.happy_death() 166 | O my Lord and Savior, 167 | support me in my last hour 168 | by the strong arms of Thy sacraments 169 | and the fragrance of thy consolations. 170 | Let Thy absolving words be said over me, 171 | and the holy oil sign and seal me; 172 | and let Thine own body be my food and Thy blood my sprinkling; 173 | and let Thy Mother Mary come to me, 174 | and my angel whisper peace to me, 175 | and Thy glorious saints and my own dear patrons smile on me, 176 | that in and through them all I may die as I desire to live, 177 | in Thy Church, in Thy faith, and in Thy love. 178 | Amen. 179 | 180 | come_holy_spirit 181 | ---------------- 182 | 183 | >>> from pytholic.prayers import Prayers 184 | >>> prayer = Prayers() 185 | >>> prayer.come_holy_spirit() 186 | Come Holy Spirit, 187 | fill the hearts of your faithful 188 | and kindle in them the fire of your love. 189 | Send forth your Spirit and they shall be created. 190 | And You shall renew the face of the earth. 191 | O, God, who by the light of the Holy Spirit, 192 | did instruct the hearts of the faithful, 193 | grant that by the same Holy Spirit we may be truly wise 194 | and ever enjoy His consolations, 195 | Through Christ Our Lord, 196 | Amem. 197 | 198 | crux_sacra 199 | ---------- 200 | 201 | >>> from pytholic.prayers import Prayers 202 | >>> prayer = Prayers() 203 | >>> prayer.crux_sacra() 204 | Crux sacra sit mihi lux 205 | Non draco sit mihi dux 206 | Vade retro Sátana numquam suade mihi vana 207 | Sunt mala quae libas ipse venena bibas 208 | 209 | hail_holy_queen 210 | --------------- 211 | 212 | >>> from pytholic.prayers import Prayers 213 | >>> prayer = Prayers() 214 | >>> prayer.hail_holy_queen() 215 | Hail, holy Queen, Mother of mercy, hail, our life, our sweetness and our hope. 216 | To thee do we cry, poor banished children of Eve: 217 | to thee do we send up our sighs, mourning and weeping in this vale of tears. 218 | Turn then, most gracious Advocate, thine eyes of mercy toward us, and after this our exile, 219 | show unto us the blessed fruit of thy womb, Jesus, O merciful, O loving, O sweet Virgin Mary! 220 | Amen. 221 | 222 | random_prayer 223 | ------------- 224 | 225 | This last method returns one of these prayers. -------------------------------------------------------------------------------- /docs/source/api/variety.rst: -------------------------------------------------------------------------------- 1 | The variety module 2 | ****************** 3 | 4 | This module contains 2 functions: 5 | 6 | sanctify 7 | --------- 8 | 9 | .. currentmodule:: pytholic.variety.sanctify 10 | 11 | .. autoclass:: pytholic.variety.sanctify 12 | :members: 13 | 14 | trinity 15 | ------- 16 | 17 | .. currentmodule:: pytholic.variety.trinity 18 | 19 | .. autoclass:: pytholic.variety.trinity 20 | :members: 21 | -------------------------------------------------------------------------------- /pytholic/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Medromenax/pytholic/d75339d376a458e5f156f89c563d9a81eef08d25/pytholic/__init__.py -------------------------------------------------------------------------------- /pytholic/bible/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Medromenax/pytholic/d75339d376a458e5f156f89c563d9a81eef08d25/pytholic/bible/__init__.py -------------------------------------------------------------------------------- /pytholic/bible/_exceptions.py: -------------------------------------------------------------------------------- 1 | class NotVivaCristoReiError(Exception): 2 | def __str__(self): 3 | print("Viva Cristo Rei!") 4 | 5 | 6 | class ChapterDoesntExistError(Exception): 7 | def __str__(self): 8 | print("Chapter doesn't exist.") 9 | 10 | 11 | class VerseDoesntExistError(Exception): 12 | def __str__(self): 13 | print("Verse doesn't exist.") 14 | 15 | 16 | class StartVerseGreaterThanEndOneError(Exception): 17 | def __str__(self): 18 | print("End verse must be greater than start verse.") 19 | 20 | 21 | class ChapterAndVerseMustBeIntError(Exception): 22 | def __str__(self): 23 | print("Chapter or verse must be Int.") 24 | 25 | 26 | class EndVerseEqualToStartOneError(Exception): 27 | def __str__(self): 28 | print("End verse must not be equal to start verse.") 29 | -------------------------------------------------------------------------------- /pytholic/bible/bible.py: -------------------------------------------------------------------------------- 1 | from pytholic.bible._exceptions import NotVivaCristoReiError as _nc 2 | from pytholic.bible._books import BibleBooks as _bb 3 | 4 | 5 | class Bible(_bb): 6 | """Contains the 4 gospels of the New Jerusalem Bible Edition 7 | 8 | These gospels are represented by the following methods: matthew(), mark(), 9 | luke() and john(). They receive three arguments, the first one is for the 10 | chapter number, the second one for the verse number and an optional third 11 | argument can be passed, it represents a final verse, for example, 12 | Matthew 1, 1-5, that "5" would be represented by the final verse, the 13 | third argument. 14 | 15 | >>> bible = Bible() 16 | >>> print(bible.matthew(1, 1)) 17 | Roll of the genealogy of Jesus Christ, son of David, son of Abraham: 18 | 19 | >>> print(bible.mark(1, 1, 2)) 20 | ['1. The beginning of the gospel about Jesus Christ, the Son of God. ', '2. It is written in the prophet Isaiah: Look, I am going to send my messenger in front of you to prepare your way before you. '] 21 | """ 22 | 23 | def __init__(self): 24 | self.viva_cristo_rei = "Viva Cristo Rei" 25 | 26 | if self.viva_cristo_rei != "Viva Cristo Rei": 27 | raise _nc 28 | 29 | 30 | if __name__ == "__main__": 31 | import doctest 32 | doctest.testmod() -------------------------------------------------------------------------------- /pytholic/icons.py: -------------------------------------------------------------------------------- 1 | class IconAscii: 2 | """Contains Asciii representations of 3 icons and an image of Our Lady of 3 | Guadalupe 4 | """ 5 | 6 | def pantocrator(self): 7 | return""" 8 | .,,.,*.,..,*,,,**(/..*(.,,.,.,**,,.,,.**, ...,*/,*,**/#((/(/*,*(**/***#,*///,,*,,**..,,..,,,..,,,,/.,,,..,,,*,,/.,,,***/ 9 | . ...,..,,,,*,,,*//**,//*,*,,*,,,,,//,(*/,*.,*,,,,(%(%(##*(///((/***((***##//(*,((#(((#(#%####/(/(/,**,,,,,,,,,/,*,//*/ 10 | /*((((((#(#((///(((((////*(/(/***///((/((##%&&###%#%#%%(((%&%(#%%%*%#&%(#*.//*/(,//,/(///#%#%########%#/##(((#(((/*#(/( 11 | (((##((##(((((/((*//(/**///#(,/*..*/*%&&&&%%#(##%##%&%%%##%%%%%%%%%&%&&%%%(%%##&/*.,#*****(*/###%(%####(#(#((#((/##(((## 12 | //((#((#(/(/(//(((((//(((/,,/*,,.#%%%%%%%&%%#&%%%%#%%#(###%%#######(##%&%%%%%#%#%%#%#@,,*,(%#,##/#(/##(((#((#(#(/(/(###% 13 | *#((#(##((#/(/*/((/(//*,*,***(%%/%#&%%%#%(&%#%%%&%&%%%%######%%%%#&#%%%%%##%&&&&&%&%%%%#&*./,,,.*#(##(###(((((####((##(( 14 | ,((((#(#((*///*//(**....*(%%##(%##%%#%%%%&&%%%#%%%&#%&&%%##%%&%%##%##%%%&&%%%&%%&&&&%&&%%%#%/,(,,,/*.##(((#(((#(*((/(### 15 | ,#(*#((#((/**//#/*/,,.,#%((#(%&#&%&%%%%%%%%%##%#%&&&&#%%%%%%&%%%##%###%%%%%&&%%%%%%%%%%%%%%%##/.,*..(**/%((#%(##/#(###(( 16 | .(((##(#(/**(((*,,..*(/((#%%%%%%%%%##%%%%%%####%%%#%%%##%##%%%&%##%%%%%%&&&&&&&&&&&&&&%%&&&%%%%(#%,...,,/#(#((((////(#(/ 17 | .((((((////((*(**#/#%((#%%%%%%%&%%%%%%%%&%%%###%%#*...........,.,,,#%%%#%%%%%%&%%&&&&&&%%%%%%%&&%%#,. .,.//((#///**/#(( 18 | /(/////(#(/./ .*((%(###%%%%##%##(#&%%%#%##/.. . . ...,,,,..............,,##%%&&&&%&%&&&%&%%%%%%%%##%.. ,,./((#(//*//(( 19 | *((//(/(((*.*,,(%##%##%%%%%%%%%%&%%#%%,. .. ,..... ,... . ..,#%%%%%%&&&&&%%%%%#%####%%(. ..,//(((/(#(/( 20 | (*/(((/((*,,.,##(#%%#%##%##%%%%%%%% .. . .*.,,...,*,,.... . .,..*%%%%%%#%&&%&%%#%#%%%#%%%/.,,,,(((///(((( 21 | /(((/((/,...###(%%#####%%%#%#%%## * .. .... . .. ..,,,.,,/.. ...... .%%%%%%%%%%%%%%%%%%%####*/..,.((((((((/ 22 | */((/##,../(%#(#%#%##%%%%&%###% ..,. ..., .., ..,*. .,, . ........%%%%%%%%%%%#&%%#%%%#%#%*,.*/(#/(#((# 23 | *(((((,..,######%##%%%%%%%###/ ... ,... ... ..*,.....,...,., ... .., .. #%%%%%#%%&&%%%%%%%#%%%#/,,*,(((#(/( 24 | *#*#(,,..#%###(%%%%%%%%%%&%#/ .... ,.,. ...,*###&&%#(#(***,.,.. . ..., .#&%%%&%%%%%%%%%%%%#((##%,.,,/((#(# 25 | #(/(/*..,##(##%%%%%#%%%%%##/ . . .,. .,. /(#%%&&&@&&&&&%%#(#*/,... . . .&%%%#%%%%%%%%%%%%##((#*.,**((/(( 26 | #//*...,####%%#%((##(%##((% .. ... .. ,#&&&&&&&&&&&@@&&&&&%##(//. .. . .. .. .%%%%%%##%#%%%%%####(%#,,*,////( 27 | (*(,..,*/####%%##%%#%%%%## . . . (%&&&&&&&&&&&&&&&&&&%%%%#(((,,.. .. . *#%%%#%%#(##%##%%#(((%/,,.,//(( 28 | #((...,((((##%%&%%##%%%#(, ... . /%&&&%&&&@@&&&&&&&&&@&&&%%%#%#(*/*.,.. #%#%#%%%%%%%#%%&&%((#(,..**/(( 29 | ##(...,(#/%#######%#%%%#%.. . . ,%%&&%&&&&%&&&&&&&&&&&&&&&%(***(##/*,.. . .%#%%%%%####%##%&&%(#(. ../*// 30 | #(* ...(//##%#%#%#%%%#%## . .%%%%(,,.. ...*&&&&&&%(,..../#%#(,/*//..., .#%%%%%###%###%##%%%(# .//(/ 31 | %(,...,(((########%%#%##.. * /#(#((,(%%#**(##%%%%(/*/*(####/*(%#(***,.... ,#%%%#%%(#%(##%%#&&#/, ..//(/ 32 | %#,..*.((########%##%#(# . .. . (##(/(**,.../(*%&%&&*(/*.@., ....*/(%(/,.... *%%%%%#(/####%%%%%%#/. ..,/#/ 33 | ##/...,(#%####%#%###%###*. ... .#&&&&(#####(&&&&%%&%,%%&&/(*,**/,(%&%#*,,... . .##%#%%%%%%#%%%###(#/ .../(#/ 34 | %##. ,.(#(((###%#%##%###, . ,#&&&&&&&%&%%%#@&&%@%,*(&%&%#%####%%&%#**,,... .#(//#(#%%%%#%%%%%#%/...,*((( 35 | %##.. ,.#%##%%%%#%##%%### . ,#%&&&&&&&&%&&&&&&&&%*/(#%&%%&&&%%&%%#/**,,.,, . . #####%(#%%&%%%%%%(%%.*.,*/((/ 36 | ###/....#####%%%%%%#%#%%#, ,..,/%%&&&&&&&&&&&&&&&&%/*(%%&%&%&%%%###/****(/,.. .#(##%(#/%%%#%%%##&%(.*.*///(# 37 | #(##*,,,,%##(#%%%%%%%%%##/ .,,..,*%.*%%%&&&&&%&&&&%%&&%%((/%%&&&%%%#((*,,,/(#,,... ,%%%#(%##%%%%%%####,. ../*(((# 38 | ##(%#*..,*##%#%##%%%%#%%(( .(#(.,(#%%%&&&&&&&/*%#(#,,(#%&&%%%((/*,..,,.... . %%%%#&%(##%%%%%#(%*,...*/(%### 39 | ##%%%#..,.*(##%##%%%%%%%%#* . .,.,/#%%&&&&&#/,,,....,//##%%%(/**,..,,..... , *%#%&%%%%%%%%####%#.. ,/(/(###( 40 | #%##%%#,*,,*(##(##%#%%%##%(. *..,*((%&%#(,..*/%#(***..,/%%%#/,,..,,*... .#%#%%%##%&&%%%####..../((##%#%( 41 | %%#((%%%* ./#(#(##%&%%%#%### *,,.*((###**/(#%%%##/////,,*#%(**. ..,, .. . .###%(%%#%%%%%#%%%%....,,,.*,,,,, 42 | ////(((/*,..,#####%%&%%&%%#((. .,,.,/(((*##(###(....,/**((*/((/,,..,,,,.. . /#%%%%%%%%(%#%(%&%%.,/,,,*/*,*/*, 43 | ,,,,**//**/.,,(#%##(%%%&&%%#(#*. . **,,*****///(//*...,*////(****,. ..,,,.. , %(%%##%%%%%(#%%%%*,.. (*.,/*,,,,/* 44 | ,,,,,(/*///,.,,(&#((%%%%%%%%#%((/. ,..,,,,,****/(##((/*/((//*/,**,.....,, . ##%%%(#%&%#/%#&#*..,/*,.,*,*,,.,*, 45 | ,,#,*,.,#(*#*/****,//#(%#%#%#%###(*..,,*,,.,*,*,//(((///((//,,,.*.. ....,, .. . (%(%#%%###&%&@&*,*,#%%%%#((///***( 46 | ,*.,,,,,/(%%*(%#**,*,,*##(#%#%%###%#/,,/(,,.,..*,***//*/***/...... ..../,. .. . . ##%%%((%(&&%((../*,/(%%%(#(/((#(# 47 | (#%(#(((#%%%/*##///,,,(%#%(#%#####,.. .#%#/,,....,.,.,*,..,,..... ..,,,,,. . . . #%%(%#((.///./**,.,%%(#//(/(/((/ 48 | &#%##%((#,**(%#(*/**(/#(%%%%###,.. . .(%%##*,.... ...,...... ....,,,,*,.. . .... /*,..(,..*,,*.,,,%(//(**////*// 49 | ((((#((((%##(#/((***,,,(,(#(,,.. .#%%%&&#*,....... ... ..,***,,,,. ... . ,...,. . ..**#(//#%*(#####//(/***(/(/// 50 | /*//*##%#/%##/*/#((//(/***,,. ,#%%%&&%%%#/,*.. . . ..,*,*,**,,. ... ....... ..,,**/#/(%#////**//*/*.. 51 | (/(*((/((((((/,*(#//**//,... .. *%%%##%%&&%##%##/*,,,,,.,,.,,,,,,**,,...... .... . ..... .*. .,.*...,(/(,/////*,, 52 | *,,*(((/*(*((/*/*/**//,.... ....#&%%%%###%%%&%%%%%#(#((/(//,**,*,*,**,,,. ... ... .. . . ,.... , , . .////**. 53 | /**///**/*((*/*/((((/..... ....%&%%%&&%%%#%#%%%%%%%#%%#((/((/***/**,**,... ...... .... . . .. .. , / 54 | *,*,,///*/*/(*,*/*/,..,.. ..,%#&&%%##%%%%###%%%%(((#%%(((##(*/**/*//, ...... ... . ............,...,. . 55 | *,*,****/*///**,,.........((%(%%%#%%#%&%%%%#(#####%%%((/(((/(/***** ........ . . .... .,. ,. . 56 | /**/*//*** ,,,,.... .... .... *%%##%%%%%%%##(**(###(////*(/(///*.. ......... . . .... ... . .,* . . 57 | ***** ,,,.,........,.. . ,%#%%%#%((((/(///(/*/(/(((/#,... ...... . . . ... .. .. . .. 58 | *..,,,,,,,,........... . .. .#%%/(((%###(#(/((#(((((. . ....... , . . 59 | ,*,,..,,,,,... .....,* .... ..##%%%%##%%%%%#####,... ..... . . 60 | .,,,,,..............,,. ... . . ... .. ..... .. .. . . .. .. . . . 61 | .................. .,,*,. .. . , . . .. .... .,.. ... .* .. . . . 62 | .,,,... .. .......,,,,, . ,. . . . .. .. . . .. 63 | ......... .. . ,,****. . , . .. .. .. .. . ..........,,.... .,.*#/**#/#(/((#//** 64 | ....... . .. . ,.***//. . . . ... . ... . . . .,,////*//%%%/*(%%*#*////(///*//******** 65 | . ..,. . . ... ..*(*/// . .,. , . . .* /,/(/,*//**///*///((/////*////*/(////(/(/,. .*. 66 | . .. .., . ...,**(*** .. . . .%/%%(%,*(*((,. .,.** *////#( #/*//// ./ . . 67 | . . .,,,***///*.. *,,,. . .,#/%(%((%,////( , ** . (////( (*.,#*//*//,**,*,* , 68 | . .,,**.*****/...,.,/,..,, , ... ..((/&/%(#(%%*(/**/. /,/,//*/(#*//(., #(/////(//**//,* ./ 69 | . . ,. ,//******,.,,,,*,*,(,, . . .,/%(%((##((%#//*//***.**,//***///////***//////(((*///*** / 70 | . . ..,**/****,/#(/*//*,,, .. . **.%(#/#((#(%(%(/(/(** .**/*//*#((////////(/(***///*/*/*,* ( 71 | . . . ,,,,**,./*(/**,,,*...... , . .. /..%(#/(*/###(%*(/*//. ,*////(///*///( ,,,,/*&*/****,/(., .( 72 | . ,.,,,,**,,,,/*.*,... . * *,/#/#((/((###%*((*((///#,//,/*&#%/*(/# .,**,#&/*#(*(**/, / 73 | . .. ..,,,,,,,,.,*,,,,*....*,. . . ,,##((*#/%##((#,((*//. #***//***/***/(*. . .##/*#%%//,*/.*, ,, 74 | . .,#%#((///**///*/*/*,/,,. . /.#*#(/**##%##(,(/**(, ,*(*#%&(/#%#%// **,*(/(/////(//*/*//// 75 | . .. ./(//*//,,,,,,,,,,,,,/*,. . ./.(///*/(////(/,*/****/*.*(/.*/***///// */*,*,/*///*/*,*/*//** 76 | . . ,/((#((//**///(/*//*,**,.. . . . . ,(*/*/#///%/#/#(,/*****((,/*////*/*/,/, / ,*///,*# .** 77 | . .,%##%#((//****,,,,,*,(*,. . ,///**/*//(/%(%//(//*/#,.//***//.. (,, .,, #//**.**..,./, 78 | , . ,#(,.,.,.,.,,*******,*,,. . . ,,*/*#/(/(#(%((//(*/# . ..#/****.*/%(((., .#*,.***,*..***, **, 79 | . *(*/*,*,,,,,,,*/(*/*,,,. . . %*(/*/*#*(#(%(#/(//*, ,*, (*/**,*,.#//% ,/**(%(*//**(*/,*/***, 80 | * /,(((**,,,,,*(((//,,,,. ..#****#*((#%(%//(**/#*//**/**,/*#%***(. *,%%%/(%%(//*//***,** 81 | . . /((%((/,,,**//**/,,,.. ./,#,#*/*/((##(%*/(*///*///*#//**#&&,,*/ * */*#&#,,,/*./#(** */, 82 | . .#(,##**,,,*/****,,,. . ,*./,#*/(/*/##/#//**//**/(/(/*%&%(%%*,,, .*//#/%,//////(/( ./* 83 | . ,. ,//((/*,,.****,,*. . .. ,../,/*(/,//##/(*#////(%#/*,//**,/##**/, ,*,.****,///*/(/(#,/*, 84 | . . . .. ...//*,,,,,,**,,.. . /,//*(,(//(/*(/.//*/*# (////*//,(/,(,. /*,*//***/#*.***/ ,*, 85 | .... . ...,***,*,,,,.. ... . . . ,.,//*(//#///**//****,(*#&*/*(/,#/(%**, /*//,**//**///*/# ./, 86 | . . . ..,*.*,,. . . .. *(/**,***(.///#/*/.,,/*. , #*(/##/**,*,***. ./,(,,**//****//*(*.,*. 87 | . . . . . . .. . . ..,, .**////**////****.,*(** *.#*%////,#/****(#(/*/,**//*//**/(,... . 88 | , . . ,. . . . . . .. , (,/,**,**/,,/////,,//,...,,***//*///**//(/*/,,,,...,.... ... . . 89 | . .. ., *... . .. . .. *,,,,.,,*/////(##(((**,.,*,,**,,. /*. .*...,,..,.. ,. . ,,..., 90 | . , ..,,, . . . . . *,,*./.**,*,/((#(##%((((/,.,.,..,,.. .....,,,,................ 91 | . * .. . . , . .. ,,.,,/*/(*/#(//(*((*///*///*.,... .., .., ,. , ....,.. ,,.....,.... 92 | . , . .,. . .. ,. ,,,*...,***,,*/**/(((**//(/***//**,,.....,,,.... .... . ....,.... ,..,. . 93 | *.. . . . . ... ,.**, . . . ,,,*///((//*//,**/***,**,,........... . ,. .. .. .. . . .... . 94 | . . *.. .... ... ... . ...,,.,*..*,**(((*///***////**...*...,.,. .... .,., . . .... . ...... 95 | . . . . . . ., ,,*,*,/*/**/(//,*****,,.....,...,,.....,. . ...,.,. ... . ... . 96 | ./ ,, .,, ,***,*//**,/****,............,......... ,...,.. ... .. .. 97 | .. . . ,.... .... ., ... . .........,.............,..,,.,, . .. .. . 98 | * . .. . ..... . . .... . . . .. .......,,.,,,,,. ....... .... .. .. . .. 99 | . . . . . ..,/, ..., . . ... . ... ,.................. ...,.,... .. .. 100 | ..,,*. .., ,/*(*,,.,**..* .,,,,./*,,. .,. ,.. .. . . ........,,..........,.,.......,......... .,* 101 | """ 102 | 103 | def hodegetria(self): 104 | return """ 105 | ,*/**************/////////////////*****************************************************///////////////////////////////// 106 | *.....................................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 107 | *..,//////********//////*******////*****//*//**///***************///////////////**/*///////////////((////((////(((###*,, 108 | *,.,//////////////////////////////**/*//////****////////////////////***////////////////*///////////((((//(((((((####%*,* 109 | *,.,/ .*//////////////////////*/*,**/*,/**////////////////////////////////*///**////**.//(/(////(((((((((((((###%%((,,,* 110 | *,.,/ . *(///////**///////////,*/**//**//////////////***,,,**////////////(//**,/,///(/,,**/(*,,,((((((((#######%(* (.*,* 111 | *,.*//..,,./*(/////////////////*///*///////////*....................///////////*((//(, .*(*//(((##((#(######%(.,...,%*,* 112 | *,.*((/,.,,.,.*(/(//(///(/*///*///////((//(/....... .......*,.,....... ,(((///(*/*(/((//,#(((//#(*(##(/%%%((,,,,..*&%*,/ 113 | *,,*//((/..,.,, /*/*,*..*/*//**/*///////(*...................,............(/((/(///*(//((,((/#*,,,,,,*#(%#*,,,,./%%&%/,/ 114 | *,,/(((((#* ..,./*/,,/*.*,/(*/(*//////(/,.,.,.,.,,........................ /((((/(((/(((((,(/((***((**%#%%/...,%&%&&&/,/ 115 | *,./(((((((/ ..,,/./**,*((///**/((/((/(..,.,.,.,,,,.,***,,,,,,,,,,,,,,,... ./(/(/((((/(((#/.,(/#((,*/(,*/,,.,#&&&&&&&/,/ 116 | *,./#(##((((((,....,/,/((*....,(((((((,.,...,.,*,***,,.,,....,,,, **,.... ,((((((((/((((,, ,../#,,*,//(,%%%%&&&&&&&(*( 117 | /,,(#######(((*/.....*/.** . .(((/(((/ ,.*,*,,,,...,*//*//(#(////*...,**,...(((((((((/###.,* ..,,(,,////**/%&&&&&&&&(,( 118 | /,,(%#######//**,..,,,***..,,/(((((((,.,,,**/, ,.,,,,,,,***,,, ,////**,..,,..(((((((#(/###%/ ,...****(///**/,#&&&&@@@(*( 119 | /,,#%#%##%/**/***, ..,*///////((#((((..**/**,..,,*/(#((*,*/*,,,,(/,,. ,*,*..,###(##(##/##%%(**./**//((/****///,#&&&@@(*( 120 | /,,#%%%#/**/////**/,//**/*//**#(#((((..**/,..*,,*////((((((((/**/.,. ,,,.**.*########(##%%%*///**//**//(//**(******(&(*/ 121 | /,,#/////****/****(*/*/******(#(##((( .//,..*/,,**///////////**(,(*,.,....*,(##(((###/##%%/*///*****//(*(***//***/(/,(,/ 122 | /*,%%#**(*//*/*/##%##%***(#((#*####(( .**.....,********////***/./(/**..,.,.((##(####/###%%(**,./(((#%%%/((/**/(/((*/**,/ 123 | /*,%&%%%&(#%%#%%##%%%%#####%###/###(# **, ...,,,******////(*/,.*/**..,.***#########*##%%%#%%(%%%%%&&%%&%&%%%&&&&&&&&&#,( 124 | /*,&&&&&&&%%%%%%%%%%%%%%############# /. .. ,,,*****//*/((,,,***,.,,.*/(////#(###/(/((//#%%%%%&%&&&&&&&&&&&&&&&&&@@&%,( 125 | /,,&&&&&&%%%%%%%%%%%%%%##%########/##.**, *,,,,**///***,,,*,.. ./(##/(((##(#((#/(%####%%%%%%%%%%&&&&&&&&&&&&&&&&@&%,( 126 | /*,&&&&&&%%%%%%%%%%%%%%%#%#%%%#%%###/..,*, *(/,,,,*//((*,,,. *(((##/, ...,*(######(##%%%%%%%%%%%&&%&&&&&&&&&&&&&@&%,/ 127 | /**&&&&&%%#%%%*(///((/#*/##///%#%####..../* //(//*,,,,,,..,, ,##((*..,,,**,*//,%##/(/(#%%%%%%%%%%%%%%&&&&&&&&&&&&&@&%,/ 128 | /**&&&&&&%%%%%%%%%%%%%%%%%%%%%#%#%###,....*,.*///////****,,,.,####,,.**,.*/##(///*(#####(#%%%%%%%%%%%%&&&&&&&&&&&&&&&%,/ 129 | /**@&&&&&%%%%%%%%%%%%%%%%%%%%%%%##%/ ....,,**//*********,,*,.(##%.,*,.*,*///((/*,.,###%#(#%%%%%%%%%%%%%&&&&&&&&&&&&&&%,/ 130 | /**&&&&&&&&&&&&&&%%%%%%%%%%%%%#,.,....,,.,,,,***///*,**,,,,,./*##....,,.,*//,,./*(,/####(#%%##%%%%%%%%%%&&&&&&&&&&&&&%,* 131 | /**&&&&&&&&&&&&&&%%%%%%%%#* ....,.,.,.,.,,,,*,*//**//**/*****/%%##....,,,,**##((//*,/##((#####%#%%%%%%%%%&&&&&&&&&&&&%,* 132 | /**&&&&&&&&&&&&&&&&%%%% .,,,,,,,,,*...,,.,,,,*..*,,......,....,##((,,...***,*//////*(##(#####%%##%%%%%%%%&&&&&&&&&&&&%,* 133 | /**&&&&&&&&&&&&&%%%%*..,,,,,..,..//.,..,,,,,.,...., ../. ,...,,.*#####((/,,,,,,,**(#/**,*/(##%%#%%%%%%%%%%%%%&&&&&&&&%,* 134 | /**&&&&&&&&&&&&&%% ....,**,**/,,,.*.,...,,,*.//,...,..*.....,,*...,(###(##/*,**/////(/*/(/(((*/%#%%%%%%%%%%%%%%%%&&%%%,, 135 | /**&&&&&&&&&&&&&..,.,,, *,,/(((/,*..*.,..,,*.****... ... . ..*...,...,...*,**,,***//.#/,/,(/(//*(%#%%%%%%%%%%%%%%%%%%%,, 136 | /,*&&&&&&&&&&&(...,*,,,, .**,//*..*,*.,....*.*,,**,..... ...,*../..*,,,...***,,***,.((**#/*(/*/(/*%%%%%%%%%%%%%%%%%%%#,, 137 | /,*&&&&&&&&&&/........ ,*,..,,/**..,**,,.,/.//,,.,**.... .,..,*,**/*/,.,*,**/*,,,*((//(/%(/*(/(///*#####%%%%%%%%%%%%%#,, 138 | /,*&&&&&&&&%,,,.......*,*,*.,,.*,,,..,*,.,/*,*,,...**, ..,..., .,*,,,,,..,*,**,,/*//(/#//#/(**//(/*/*##%#######%%%%%%#,, 139 | /,*&&&&&&&%/,.,..,.....,,,,/..*,.*,,..,*,**,.*,*.....,*....,/......,...*(*(****,,*//(/(%(/////*//***/,*###############,, 140 | /,*&&&&%%%(,*,,.,,.......*,/*,.,..,.,,..***,..,,,......,../*....,,,,,*(,/,,,***,,*/(##(//((///***/*//**,##(##########(., 141 | /,*%%%%%%%.,,,.,,,........*/,,*..,....,,.,*,....,,,....**,/(((//(/**/,*/,/,(/,,**,,*#(///(//**,*/,,,*/*//.(###(#####((., 142 | /,*%%%%%#/..,.,,,...........*,.*..,.....,..,,....,,,.,**,//*/**,/(*,/*,/.,#,##((//(/*(/*(***,,,,,///(///**,#(#((((((((., 143 | /,*%%%#%% ..,.,,....,........*,..*..,....,...,,....../*,,****/(*.**,,*,*,/((((((//////(//**,*////(/*//*****,((((((((((.. 144 | /,*%%%%#(....,,,..............,*..,, ,.........,.....**////((////,*,,,.///(/((/////*//*/*/**/**/*,,,,,**,,,*((((((((((.. 145 | /,*%%#%#/..,.*,,................,,..,...........,,..,*/////////**,,.,*/////(*///////*//**,,,,**,*****,*,*,*,/(/((((((/.. 146 | /,*#####*....*,,.....,............,..,,............,**////****,.,*,,,******/*(/(((//*,**/*,*(**(**/*,,//**,,//(((((((/.. 147 | /,*###((..,.,*,,...................,.............,,,,****,,.,,***,**/*********,,,,/,,****,,/**(,*(*,*.**//*../////////.. 148 | *,,((((( .../****,,,.................,......*(****(/*,,....**,*,,,****,,,**,,,,,**,*,,,,,,,*,(,*/,*(/,,,,.,,..(///////.. 149 | *.,((((*...,*********/*,...... .......,**/,*,********,...,,*,*,,,*,,,*,*,,,,,,,,,,,*,,,,,,,,***/,*((*,****,....///////.. 150 | /.,((((,.....**,.,.,,*,,,,....... ,/**,,** *.,******,,..,,*,*,,*,,,***,,*,,,,,,,,,,,,,,,,,,,,,**,//,,,**,...,..///////.. 151 | *.,((((.. .*,/,,.,.......,,,,...,.*,...,*/,,., .,***...,,*,*,,,***,*,,,,.*,,*,,,,,,,,,,,,,,,,,,,,*,.,. ...,*. .(////*.. 152 | *.,((((.,*,,,,,.. .*,,.. ,*/.,,.,,,...,,**,.... ......*,,,,,,,,/**,,,*,*,*,,,*,,,,,,**,,,*,,*,,,.. . ....,, . *////*.. 153 | /,,((/(,,,.,.,,......*,,*,,.,....*,...,,*.**,. ....,*,,,,,,,**,*/*,,*,*.,,.*,*,,,,,,,*.**,,,*,. .. ....*..... ..////*.. 154 | /,,(((/*,,......,. .,*,.*,.,,. ,.*....,,*.***.......,**,,,,*/*//**,,,,,,,,,*,,,,,,,,****,,,*,.........*, .... . .////*.. 155 | /.,((((*., .*,.. .*,,...,..,...,.,...,,,,......... ,/*,,,,*,,,,**,,,,,,,,,*,,*,,,,,***,,,,*,,. .. ..,,... ..... *///*., 156 | /.,((((.,.,... .,,.........,.........,.,...........,,,,,*,****,,,,,,,,,,*,,,**,,*,,,*,,,,/*,.... .,,..,......... .///*., 157 | /.,((((,..*, ,,.........,....,.,...,..*.... .......,,,,*/****,,,,/,,,,**,***,,,,,,**,,,,*.... ..,. .. .... ..... ///*.. 158 | /.,((((..... ,..........,.....,.,......,...........**,,/**,,,.,,,*/,,,******,,,,,,,**,,,,,......,. ,............. *//*.. 159 | /,,((((.....,..........,........,..,..,.........../,......***/*/,,****...,*,*,,,*,,*/* ........,..,....... ,... ..*//,., 160 | /,,(((/...............................,......... .... ..,***,,,,****,**,..*,,,,,*,*,..........,..... ..., ........,//,., 161 | /.,(((,...............................,..............,,******...............,,**,,,......... ,.........,..,... . .//,., 162 | /.,(((,..............................., ..........,*,,,,* ..........,... .....,*,........................,........ //,., 163 | /.,(((................................,..............,.,........,. . ................. .................. ...... //,., 164 | /..,,*................................................... ........ ........................................ .. ... */,., 165 | ((//////******,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,...,,,,,.. .......................... ..........................,* 166 | """ 167 | 168 | def our_lady_of_guadalupe(self): 169 | return""" 170 | &&&&&&@@@@@@@@@@@@@@&&@&%%&&*,*,,*,/*/*/*,.,,,,.,**,,,,,...***,*/***,,,*,*,,,,(&&&&&&@@@@&&@@@@@@@&&&&&&&&%%%%%%###%##&@ 171 | &&&&@@@@@@@@@@@@&@@&&&&&&(,,**,*,*/((,**,.,.,,,,,..,*,*,,,..,,//*/*********//**,*,(%&&@@@@@@@@@@&&&@@&&&%&&&%%%%%#%%##&@ 172 | &&&&&@@@@@@@@@@@@@@@@&@&&/,,*,***//((*,,..,,*,,,,,,,.,*,,*,,.../**//**(//*,,***//*,*#&@&@@@&&&&&@@&&&&&&&&&%%%%%%%%%%%@@ 173 | &&&&&&&&@&&&@@@@@@&&&&&%,,*******///,,,.,,*((((##(/,...,*,,,,...#**((*,*/***//,*(/****#%&&&&&&&&&&@&&&&&&&%%%%%%%%%%%#&@ 174 | &%&&&%&&&&&@&&&&@&&&#*,*,,**/*,*//*/,*,,./((((#(#(((/*..,,,.,.,./#,*,//**///**//((//**//*#&&&&&&&&&&&&&&&&%%%%%%%%%%%#&@ 175 | %%&%%%%&&&&&&&&&&&&&&/**,,**,**////*,*.,.*(/((//((//(((,.,,.*,,../#(*/((/**////*/((////,,(&&&&&&&&&&&%%%&&%%%%%%%%%%%%&@ 176 | &%%%%%%&&&&&&&&&&&%/,******/**//**////(,..*///(/(((##(//,.*,.,.. ,(%(*,*/***/(////(((((/**(#%&&&&&&&&&&&&%%%&%%%%%%%%%&@ 177 | %&%%%%%&&&&&&&&&&&&%,,********//(/*,*,***..*(/(((#####(//,,*,,,,.,***/***((*,/(///*/((//**,,*//#%%&&&&&%%%%%%%%%%%%%%%&@ 178 | %%%%%%%%%&&&&&&&&&#/*,****///*///***/((/., .,///(//(((//((,****,,.//*(#*,*/(//*/((***/(((*/,...(&%%&&%%%%%%%%%%%%%%%%%&@ 179 | %%%%%%%%%%&%%&&&&%,***////(//***//((((//,,*. ..*/((((/(#((/,*,,,., .,,*(((**((/**/(///(((/***,,/%%%&%&%%%%%%%%%%%%%%%#&@ 180 | %%%%%%%%%%%&&&&%%/,**//*//*///((((//,.,,**,,..,..,**/((###(****,.,,....,/%/,,*/((/*/(/*//((//*,,(%%%%%%%%%%%%%%%%%%%##&@ 181 | %%%%%&&&%%%&&%%(/,,****//(((((((//*/(#%&#,.,,...,*,**///((///*,,,.,,,,,,.../%(,/((/,*(##(*((((*,,/%%#%%%%%%%%%%%%%%%%#%@ 182 | %%%%%%%%%%%%&#,,,**/////((#((*,*,*/(##. ,,./,..,**(,*//****///,*,.**,,,,,,....,,/##(*((#(**(((/*,,(#%%%%%%%%%%%%%%%%#%@ 183 | %%%%%%%%%%%%#/*,,,*//////////(#(##%*....,,,,,* ,,*/#(/(/((////**.,,,*****,,,,....**#((*,(#((/,/(//*,,#%%%%%%%%%%%##%%#%@ 184 | %%%%%%%%%%%%%/,,*///**,**/(###(//,...*,,***,,,.,*//(,/,*/(*/**./**,.,,,**,,,,,,,..,,*(#(/(##(((**/*,,*#%%%%%%%%%%%%%##%@ 185 | %%%%%%%%%%%%(,,**//((((//(((**,, .,.,,,*****,,,,,***(/(/(/*/**//(/,.,,,,***,,,,,,..,/*(#(/**((/(/*,,.(%%%%%%%%%%%%%%##%@ 186 | %%%%%%%%%%%(*,**/(#((((((/***/(,,...,*//****,*,,*(/(((#((/(***#(/,,*,*****,,,,,,*,,. ,**((#(/*/(((/*,/%%%%%%%%%%%%%%##%@ 187 | %%%%%%#%**,***/*(((///**,,****....,,*****/****.*//%((((*#(/*,*(,,,,,,.,,,,,,,,,,,,,,.*(*/(##(,.*((((/**##%%%%%%%%##%##%@ 188 | %%%%%%%%*,,,***///////////(#%*...,,,,****,,**,,/*/((((((///,,/*..,,,,,,***,*,,,,,,....**,**(##((*//((//**%%%%%%%%%%###%@ 189 | %%%%%%%/,,,,***/*/*///*///(#*.,.,,,*,,**,,*,..,*#*/((((/**,.,,....**,**,,,,,,,,,,,,... ##///(#(///**,**,***(#%#%%%%####@ 190 | %%%%%%%/,*,,,,**/(/*///(##%*,,,,.,,,,*,,*,,*/(.,/(*/(((/,*.*.,.,,..,,***,,,,,,,,,,,,,..*#**,.**(/((((/**,*,*#%#%%%#%###@ 191 | %%%%%%%%/*,,***/////(#((##(..,,,,,,**,*,,**./#/(/((*/#*((#*/.*/(*,*,**,,.,,*,,,,,,,.....##(//*,/((#(///*..,##%%%%%%%%##@ 192 | %%%%%%%%#*,,//(((((((/(/*,..,,,,,,,,,,,,(*//.(#/##(*./###(//,//(**,,*****,**,,,,,,,,.,,.,(****,//((((//*.,(%%%%%%%%%%#%@ 193 | %%%%%%#%/*,*/((((((/**/*(.,.,,,,,,,,,*,.(*////((/*#*.**//((**(#/(,*,,*****/***,***,,,,,. (%###(#(///(/(/***#%%%%##%#%#%@ 194 | %###%##//*,*//***//**//(, ..,,,,,,*,*,*.,**,**,(#/(*.(#(##,*,/**(*************,,***,,,,. /%##((///,,*/(/*,**#%#%%##%%##@ 195 | #%%###(***,*/(((######%% ..,*,*****/*****,*/*((*.,. ,../*,,/*,.*/,,*******,/*****,,*,,...*%%%%%((((((/(/*,**/#%%%#%%###@ 196 | %%%##%%/**,*((((/(#((##( ..,,,,,,,*,,,*,,,.,.,*. . .. ****,..**,,,,**,****,***,,,,,*,,,..,#%#####(((((//*.*/#%%%%%%%%%#@ 197 | %%%##%%#,,*///*,/*/*,,,, ..,,,*,,,*****,..*,/,........./**,*.*/*,,..**,,****,**,,,,,.,,,..///(((#((((((//,*%%%%%%%%%%%#@ 198 | %%%#%%%#*,,//////((###%% ..,,,,,,,***,**.****.....*.,. /***,**#((///***********,,,*,,,,,, /((######((///*,,#%%%%%%%%%##@ 199 | %%%%##%/*,*/((((((((##%%*...,,**,,***,,*,,,*,,, ..* .. /***,**##(((//**********,,,,,,*,,,.,,****((((((//****#%%%%%%%%##@ 200 | %%%%%##/,**/****/#(#/*,,,...,,,,,,,********/***,,,*/,,,/***,,*(###(//(,**,*,,***,*,,,*,,,,(((#(#(((((//**,,,*#%%%%%%%%#@ 201 | %%%%%%#/,**///(///(/((((/ ..,,**,,,*,,**,,*****,***/,(##(*/,,,/(////***,*,,,**,,,,*,.,,,,,,,,,*,,/#(((((/,,*/#%%%%#%%##@ 202 | %%%%%##****/#(#(((####%%%.*.,,*,,,,**,**,,*/*,*,**//*(#%#*//***,**,*///,.**,,***,,,,,,,,.*///**//(#((/(/*,,/(%%%%%%%%#%@ 203 | %%%#####,**/((//((#####(#,..,,,,,,,,,**,**/**,****(/,(#((((((#((*##(#/*,*****,/*,,,.,,,,.,,,.,.((####((/***/#%%%%%%%%##@ 204 | %%%%%#%#,**///*///******,...,,**,,,,*/*,,//***,**,((*##%%#%#(###%#%((**,//#(,**,*,,.,,,,%&%%#####((((((//**##%%%%%%%%%#@ 205 | %%%%%##/**///(((///////((...,,*,,,,***.**(/***,***///##%/#(%#(#####%(/.//((//,*,,,.,*,.*(((#(##(((((((((///(#%%%%%%%%%#@ 206 | %%%%%##*,,/(((((((###%%%%*..,,*,,,.**,,*//***,,**,((*###(#%((##%##%#%*,*/(/*.*****,.,, (%%%%%#######((#((**/*#%%%%%%%%#@ 207 | #######**,/(/(((((#####(#, .,,,,,,**.,,*/**,,,,**,///(###((###%(((/##**/(/,,*****,,.,,./######%#%##(((//(***(/,/#%%%%##& 208 | %#######,,/////*/*****,**. .,,,,.**,,***//*,,,,**,(/(####((##(##(%%#//*//,,**,*,,* ,,, //*(/###(((((((((/***///###%%###& 209 | %#####%(**((#(((((((####%, ..,,,** .,*,*//*,,*,,*,(**##(/#%##((%#((#(*/**,,*/*,,,*.,,,,/*////((/(((((////**,,#%%%%%%%%#& 210 | %####%(***/(#(((((###%%%&,.,..,*, ..,,,*/*,,,,,**,/,*(**%(((((#(%(%##/**,***/**.,**.,.*,*,,**///#//(#////,,,/%#%%%#%%%#& 211 | %%%%%##/**/*****//**,***/....**. ...,.,****,*,,,,,(*((/#####((#(((##(*****////*,,,,* .######(%(###(#(/(/**,*/%%%%%#%%%#& 212 | %%%%%%%(**//(((#(((//**,* .,,,. ..,,,,,**,,*,,,*,*,//###%%#((#(((((((,*///////*,,**..//(((#########(////*/*/(#%#%#%%%%& 213 | %%%%%%#////((##((((#(/**/..,.., ....,,,*/*,,,,.,*,/,,/##%%%###%%(%%##(***////(/*,,,*,/%&&%%%%#####((((((/****/#%####%%%& 214 | %%%%%#/(/**/(#######%#%%(,. .,, ......,,//,,*,,**,*,*/(#%###/(((#%(%#((*****////*,,,*/%%%%%%%%%####(((/(/****%%%%%#%%%#& 215 | %%%%%%##////(#####%%%%%&%....,,.. ..,,,*/*,,,,,**.,,*(###(##((#(/#&%(((*****//(/*,.,*,*//%((//(//(###//((*,*(%%&%%%%%%#& 216 | %%%%%%%%#,,*******///*/*//,,,,,.....,.,,**.,,,,,**,,/(((#%%###%###(((##***,**/((/*,.,*,**//(###%#%(///(((/**,#&%%%%%%%#& 217 | %%%%%%%%/,,/#######((//////**,,. .,,,,*(*,,,,,,,,,,/(((####/((###%#(#(/,*,**/(((/*,,*/,(//(/(((((#(((((/**,**/#%%%%%%#& 218 | %%%%%%(***//(###%#%#(((///***.,. ..,,.,****,,,,*,,.*(((#(#%(/(#%((((/##(,*,***/((/*,.,*,&&&%#######(((((**,***(%%%%%%%#& 219 | %%%%%%(****((#####%%%%%%%&&& ,,. ...,,,//*,,.,,,*,,*/#(/(((/*###(((#%(((,,,,,*/(/((*,,,,.###(((########(****((%%%%%%%%%& 220 | %%%%%%%/,,///(((((####%%%%&& ..*. ....,/*,,,,,.,,.,*/(/*//**(***//((#(#(*,,,***//(*,.,,,,,*,,**/(//(#((/*/,(%%&&%%%%%%%& 221 | %%%%%&%%#/((/(/((///***//*// ..,, ,,.,,/(**,*,,,,,,**/(/,*,**,,*/(#(##(//.,,******.,,**.,,.*/(((((((##(((((%&&&&&%%%%%%& 222 | %%%%%%&&&&(**/#####%%%%%%##(..,,. ,,,,*((**,,,.,,,,*/,/((,,,,*/////###/((,,***,*..,,**.,*,,*##,,****(/*/**/%&&&&&&&%%%#& 223 | %%%%&&&&%&&(/(##%%%%%%&&%%#(..,*. ,,,,,/**,,.,..,,.//,#(/,,,.**((##((**#*,,,,,,,,..,,,,,,**,/**/*/(////****(&&&&&&&&%%#& 224 | &%%%&&&%%%%(*/*//((((#%/%%%&*,*,...,,.,*/*..,,..*,./*,(#/****/////((/*((/,.*..,,,..,*,,,,**,/*//*(((///*,*/%&&&&&&&&%%%& 225 | &%&%%%&&&&%(/#(###((((#,,%%&,*,,,..,,,,*(*,,,,..,,.**,((/**,**((//%#(*#(**.,,,,,,,..,,,*//***##/*###//***(%&&&&&&&&&%%%& 226 | &%%%%%%&&%#(/(##%%###//,.,/((**,,. ,.,.*//,,.,*,,/,,(/((/**/(/(((###/*//*///(,,,*,...,,,*//*.#(,.((/(****/&&&&&&%&&&&%%& 227 | &&&%%&&&&%(*/(((#%%%%%&(,.*(*/*,,,.*,,.*(#(/*,.,,,,,/*(/**//(/*/((//,*((,(/(/,....*,***,,,*,,(.,,((((/***(%&&&&&%%%%%##% 228 | &%&&&&%%&#///#((#(/#%&&&.,. ,//*,,,,,,,,,,*(//,.,,/,***/////*(//(((/*/,(,/(//,,,.. #%###(///, ,.*(#/**(%&&&&&&&&&%%%%#% 229 | &%&&&&&&&%%#(/(/(((///(#%*...,(//,..*,,,.,,(#*#(,,,,,*,//*(/,(####(,(/,/*/((*,.,,,/*/(##((*./.,/%##((*(&&&%&&&&&&&%%%%#% 230 | &&&&&&&&&&&&&&&#/(%%&%#(((,......,*./*,**/**,,,/(*...,,(////**(#(*,(#*,//(/(*,.,./(##((/,,,,../###(///#&%&&&&&&&&%%&&%#% 231 | &&&&&&&&&&&@&&&&&//%%&%&%(/* .,,*,,* /***/*///*//*/**,,,*,/**(((,///.(#/*/(#/,,,*,,/#( ..,// (%#((/**//#&&&&&&&&&&&&%%#% 232 | &%&&&&&&&&&&&@@&&&(#/#&@&&&&#***,,***((*((///((*///*,,*////**/**,*///((//(/*(,*/** ,/,...*,.%%#%#((/#%&&&&&&&&&&&&&&%%#% 233 | @&&&&&&&&&&&&&&&&&##%&&%(%&%.*****//***,,*/*/(#/(##(*(#(//(/**(///(**//*/(##(,*.*.. . ....###///((&&&&&&&&&&&&&&&&&&%%#% 234 | &%&&&%%%&&&&&&&&@&###&&&%(((*/****/*(*(*,*,**,,,//(//((/((//***(*//##(####(#(/*,.,,,,...(&%%##%((%&&&&&&&&&&&&&&&&&&%%%% 235 | &%&&&&&&&&&&&&&&&%%&%#&@&%%/*////////*,**//*,**(//**//*//*(**/((####%###%%#(#(##((*.,,/##%#(##(//%&&&&&&&&&&&&&&&&&&&&%& 236 | @&&&&&&&@@@@&&@&#%&&&&@%%&%*////(///****#%#((/.//#(///***,*//*(#*####((%%(((//##(#*((*(%%%/#%##(((&&&&&&&&&&&&&&&&&&&%%% 237 | @&&&&&&&&&&@&@@@@&%%&&&&%(,/(/////*/(####,,********,,*,**/****,,//******,*(/##%###(*##%%%#%#(#(((##%&&&&&&@@&&&&&&&&&%%% 238 | @&&&&&&@@@@@@@@@@&@@&&%#&&&//((/((//%#(###(////******,,,,,,,,**////**,.,.*/**(/(##%/,#%%#%##(((%&&@@@&&&@&&@@&&&&&&&%%%% 239 | @&&@&@@@@@@@@@@@@@@@&@&@&%%&((/(((((/*(////*/(#%((##/*//,,***.,*/**((,,,*****##(//(*/#%(&####%&@@@@@@@@&&&&&&&&&&&&%%%%% 240 | @&@&@@@@@@@@@@@@@@@@&@@@@&&%##//((*/(*,*/(*(*/((#((/*,,,/#%#/(,//(*(((,,,*(/*,.**/,(//(%##((/%&&@@@@@@@&&&&&&&&&&&&%%%%% 241 | @@@&@@@@@@@@@@@@@@@@@@@@@@&&&%%#%%##%#,,,*,(/((#(/((//*##**%##*****,*/**(**,..*##%##%##/**(##%&@@@@@@&&&&&&&&&&&&&&&%%%% 242 | @&@@@&&&&@@@@@@@@@@@@@@@@@@%(#%##(*,*(#/,,,,***(##(((((##(#(/**((/////**,.,,,/%/,,,,,,,,,,*%&%&&@@@@@@&&&&&&@&&&&&&%%%#% 243 | @&&@&@@@@@@@@@@@@@@@@@@@@&%/*******/,*%%#**,,,,,*///#((/((***//*/**,,,,,.,.**##,,,%&&&&&&(**/#&&&&&&&&&&&&@&&@@@&&&&&&%% 244 | @&&&&@&&@@&@@@@@@@@@@@&&%,*,/%&%&&&(,**&#(%##/,,,,*//**,*/****(,,,...,*(###(*,,,,/&&&@@&&&&@&&@&&&&&&&&&&&&&&&&&&&&&%&%% 245 | """ 246 | 247 | def christos_acheiropoietos(self): 248 | return""" 249 | .,... ...... . .... . . ..... . . ... .................,,,,,,,,.,,,,,,,,,,,,,,,, 250 | (((/(/*/(*////////((((///((#(/(#/#/////#(/(((((/((##(/((//((###(((/((#((#(////*/#***//*****/**(////*///////**(//////(*** 251 | #/(#(##(############%####%##############%#(#(###(#####((##%###(##(((###(((#((##((#(###(##(((((((##(//#((##(((((((((/(*// 252 | #/((((((###########%%####%######%##########(#((############((##((#((#########(((######(####%#((((##((#(#####(######/(#(( 253 | ##(#%#((/(/((##(((///(/((////(((//((###(###(#(#((//((**/(,,/,*/*(*,,,/(/(//(//(/(#/*/((((/(((((#/((((/*(((/**//,/**/###( 254 | #(/%##%#####(###%%#(########%#%#%###(#(##(#*/#&#%%%%&%&&%%%&&%%%&(&&&&&&%(%/#(((##(##(#####%(##(#(####(#%/(#%#&&(((((##( 255 | #/####%(###%%(#(%(###(####((########(/(#%#(%###*&&%&%&&&&%%%%&&%%(&%%##&&(%%#########(%#(##%%#(###%#%%#/####(*#%####((## 256 | %((#######%#%/(/(/#####(##((#####(%%%%#%%#%##%%##/&%%&%&&&&%#&&&##%%#&((#%%%&&%#%##%%#%%(*##%((##/((%&%%#((#####%(((#%#( 257 | #(((####%#####%&%%#%%##%#####(&###%%%#%###%%%#%&(%/%%#(,.,* . .*,,.*....//&%%%%%&%#&%%%%%%%#%%#####(#####((#(#(#%#((#### 258 | #/(####%#####%%%#%%%%###%#/%%%%%%%%##%((#%#((##&/., ,,..*.. .*.*,*.,.,***,*#%%%&%%%&&%%%%%%%%&(#%##%#%##%#(#%##(((%##( 259 | #/#%###/####%%%%#&%%##%##%#%%%%%%%%%%%%##%##*.,.**.,/..*/ *. .,. . . . ,(.., %%#%%&%%%&%&%&&%%&%(##(#(#(#####(%#((%#( 260 | #(###%%#(#%#%%%##%%#%/%%%%%%%%%%%%%%%%%%##, , , (. /*. .(, . /.......*%/ (..# . .&%%%&%%%%%%%%%%%%%*###(((#((%#(/((((( 261 | #/##%##%#(#########/%%%%%%%%%%%%%%&%%%##. .* * ( .(. **..(. ,//. ,*. (, .* / / /.*%%%%%%%%%%%&%#%%%%(#####(#%###(##(( 262 | #*(#%##(#########(#%%%%%%%%%%#%%%%%%%%/, ..( *.,.( ./ ./,./,, .,(. // / # * , .., /, (&%%&%%%%%%&&%%&%%%####%%%##(((/#( 263 | #/%(#%(#########(%%%%%%#%%#%#%%&%%&%%. , .,/.., .. ...* ,*(,**.,*, %.( ( * # .. (&%%%%%%%%##&%%%%&%%%##%########( 264 | #((##(&##%#%&%#%#%%%%%%%%%%%%%%%%%%% /* * *./ .*//(,*/ ./.(((#((/,. . #. ,* ,. ., #%%%&%%&%%%&%%&#%%%#((#%#((##(/( 265 | #*(#%#(###%%%(%%%&%&%%%%#%&%%%%%%%%...(,.. ,,./* *(((#((((#(((((*###(#(((/*. .*( (,.. .%%%&&%&&%&%%%&&&%%%%(####(####( 266 | #*#(########/%%%%#%%&%%%%%%%%%%%&%# *. *# ..( *(((#((((#####((/####(###(((*. * .. /. * ,%%%%&&&&%%%%%%%%%%&%###(#(#(#/ 267 | ##(###((##(*%%%%%%##%%%%%%%%%%%%%# ,/,.*. ( *((####(####(((###/#####((((((// *,. /../. .&%%%&%%&%%%%&%%%%%%#*(#(((#(/ 268 | #/(%#%####/%%%#%##%%%%%%%%%%%#%%# ,/. ,*..,./((#(###(#((((######((#####(###/(*. /*. %. ..,/&%%%&&%%%##%#%%%%#%###(((##/ 269 | #,(##%###(%&&#%%%##%##%%%%%%%%%%( ,. .(( /#((( . *#####(########(. ..,*. (#(* . .#* ...%%%%%%%%&%%%%%%%%%&%&((###(% 270 | #####%####&&%&&&&%&#&&%&#((/#/(*,. (, *(#(.,*//........((##(( ****(/.,(//((/ #,/. *//,.&#%%&&%@&%&&&&&&&&&&%#/((##* 271 | #//(##((#&%&&&%&&&%&&&&&%#@&%&&%&. * ,/. /(#*(*(/ . .#(.//##,/*(* . ,** /((((/./..( .* *&&@@&&&&@&&%%&&&&&&&%&/(#((( 272 | #/*((####&&&&&&&&#%&&&&&@%@&&@&&&..(..(*(./#((#.* . *(//*.(/(#,/.**, ,/(*,/*(((.(.., .(..%&@&&&%&&&#&&&&&&&&#%&&%(##(# 273 | #(*##/(#/&&&&&&@&&&&#&&&&&&@@&&% //.(,.. /(##(((.. ..,.*(#(((#,*(#(((#(((/*(#((*..*..%..(, /@@&&&&%@@&%%&&&%&&&&&%/%%#( 274 | #//####((&&%#&&&&&&&&@&&&&&&&&%,/..,* ../(((###(//***((#((((/#,/####((((#(#(##(**,(*../(....#&&&(@&&%&&&%%@@&&&&&((((#( 275 | (//###(#%&&&(/&&&&%&&@&&%@&#@&#. . ./(*/(.(###(#(((((((((((((/#*/(####(((#((#(((/..(%**,. .. .&&&&@#&&%#&&&%&&&&&&/(###/ 276 | #//#(##((&&&&%&&&&&%%%&&&&&@%(/ *...*.,#.,(((##((((((((((((((*(*/*#((((((((((((/, *(/,,(///,.,(&&&&%&&%&(#&&&&&&%&(((#(* 277 | #/((#%(((&#%%&&&&&&&&&&&%&%&&&/ ... ,..,((.*((((((((((((((((*(((**((((((((((/*,.(*# ...,.,**./&&&&%%#%&&%%%&&&%%#&/((#(/ 278 | #*((##(/(%&(#%%#%%#%%###%%%%%%#%,*#/*/*,.((***((((((((((((((.((,.(#((((((//,.,,,(#.(. ...., &#%%#%%#&%#%%%&%##%%(#((/(/( 279 | #//#####(%%%%%%%#%%%%%%%%&%#%%%%%/ /*.. . ,**/((((((((((*,,*,,,,//((((/*,,,... ./ /... .%%%%%%##%%#%#%%%%%%%%%#///(#/ 280 | #*/###(*(*%#%%%%%#%%%%#%%%%%%%&%%%%#. ** .,**///(((((*,,,,****/*,.,*#/*/*,.... ( ,/#%&%&%&&#%%%&%%%%%%&%%%%%*(#(((/ 281 | #/(###//*#%####%%%%%%%%%%%%%%%&%%%%// . ...,***((((,,/(((/(//*((((,*///*,,,.. . ( ./%%&%&&%&#&%(%%%%%%%%%%&%#(####(/ 282 | #**#(#///%#%%%%%%%##%%%%%%%%%%%&%%#*(///. ., ,,,,*//./#((*,,.*,,**//((**,,., , .((//%%%&%%#%%%%%%&%%%%%%#%%/(/((/// 283 | #*(##%//(%%##%&#(#%%%%%&%%%&%%&&&%&,*,,** , ..,,,//((///#(##(((#((//*/*,,,. , ..,%%%#%%((%%%&%%%&&%%%%%(##(*((%( 284 | #,/####/(%#%#%%#%%%%%%&&&&&&&%&%&%#,.**.* ...,,*(/**//(///,/,////***,,,. . ..*.*/. ,(.#%(%%%%#%%%%%&%%%%%%%##((##(// 285 | #*(#(####%#&%/(%%%%%%%&&%&&&&&&#..,*...* .,*..,.,,,***,**,*,,,,,,,*,,...,.*(. ,#(....../,/&#%%%%%%%%&&%%%%(/(%####(#(( 286 | #/((#####%#%#%#(&&&&%%&%&&&%&%%/*/(. .. **/ ,(,..*,,,,***,,*,* ..,/*,,,,,. ((# .*/*(,, ,,*/#(%%%%%%&%%#%%###(####(#(#(* 287 | #*(##(//##%%##%##(&&%%(%&&%%&%#,*(...,(.//,./###*....*.,......,*,,..,.... .(%%#*. ,,# . ../,,/%%%#%%&&%&&#((#####(*####/ 288 | #(((((/(#%%###%####&%&%%%%%%,,/.* /* #%/*.,,,%%&&%(,.,,,.,...,., ,.,.* ..*#%%%(.*,*/.&./(.. .//,,(%###%#(((######(#*(#// 289 | #*(##(*(########%%##(#(&%#/.,,*,*., %%#*,.,.*&%%&%/..,.,, ...,. ,.,,..*#%%&%%..(. *..%%*,/,*,/,(##&%###(/(/(###(#####( 290 | #/(#(#(###########(%%(#(%# ../**..#&/.* ,,**@@#&&%%..., ...... . .,.,..%&%&&&%%/( (. ,.,(...*, .#%&#%#######/######%#(, 291 | #/(####(###%#(#(##########&./*,..,&,.,, ,,#*%%%%%%&%/.,,. , .., . .. #%%%&%%%%%&,,. ,/&%#%#(##(##############(##(#// 292 | #(/#(##((###########(%#((#(#(%%%%##*..,.,.#%%&%%&&%%%%,,.,.,.*(# . .,..##%%%%%%%%%.(*.*..%%%##*//(/(###(#######(##%(#((* 293 | #*/((#(((#######%(##(#%((#####%#(%%#%,*.(%#%%%%%%&&&%/...,. .#(.... ...#%%%%%%%#%%%%%&%##%////*/((#####(####((###((%##(/ 294 | #*/##(/#(((#(####################*#((##%(&##%%%%%%%%%%. ..*.(/.. .../#(%%%%&#(#%%(#//#(((///((########(#(#(####(#&#%(* 295 | #*/((##(/,,,,*##((#(########%######(((#(//((#%%%%#%%%%##////#####(//(#%%%#%%#(*((##%##########(####(#((((#(((((#(((/(((* 296 | #,*#((#(.,.,,(#(#(##(##((####((//((##(##(%####((##(#(///*///(***(/,/(/#((#(((/######(###/#/#####(##(###(####((/#(#//(,*, 297 | #**#(/((((((#(((##%(((#%#%#%%#%#%#%#%##%#########%%&/((((#%%#%%#(%#%%&#%%%%##%%%%%#(%%%%#####%#(#(##(%%((%#((((((((*/*** 298 | #//(/##(/(((((##%#%#########(((#####(((###(###########%%#%#%##(/(###%%%%#%%%%%%###(%#######%###########(######(((((///** 299 | #(/(,**(((((((((((((((((((((((#(((((((((((((((((((/((((((((((/*/*//#%(#(((###//(#((((((####(((#/((((((((((((#(((((((((/* 300 | /*/*//*****(*((/*#**/(///*/***/*#//*(/((//(////*///////*////////*////////////*//*/////**,***/*/////*/****************,,( 301 | """ 302 | -------------------------------------------------------------------------------- /pytholic/prayers.py: -------------------------------------------------------------------------------- 1 | import random as _random 2 | 3 | 4 | class Prayers: 5 | """Contains 12 prayers 6 | 7 | The prayers are: Our Father, Hail Mary, Glory Be, Apostle's Creed, 8 | Anima Christi, Angelus, Saint Michael, conversion of sinners, 9 | for a happy death, come Holy Spirit, Crux Sacra (in latin), 10 | Hail Holy Queen. You can also return a random prayer. 11 | """ 12 | 13 | def our_father(self): 14 | print( 15 | """ 16 | Our Father, 17 | Who art in heaven, 18 | hallowed be Thy name, 19 | Thy kingdom come, 20 | Thy will be done, on earth as it is in heaven. 21 | Give us this day our daily bread, 22 | and forgive us our trespasses 23 | as we forgive those who trespass against us, 24 | and lead us not into temptation, 25 | but deliver us from evil. 26 | Amem. 27 | """ 28 | ) 29 | 30 | def hail_mary(self): 31 | print( 32 | """ 33 | Hail Mary, full of grace, the Lord is with thee. 34 | Blessed art tthou amongst women, 35 | and blessed is the fruit of thy womb, Jesus. 36 | Holy Mary, Mother of God, 37 | pray for us sinners, 38 | now and at the hour of our death. 39 | Amem. 40 | """ 41 | ) 42 | 43 | def glory_be(self): 44 | print( 45 | """ 46 | Glory be to the Father, 47 | and to the Son, 48 | and to the Holy Spirit, 49 | as it was in the beginning, 50 | is now, and ever shall be, 51 | world without end. 52 | Amem. 53 | """ 54 | ) 55 | 56 | def apostles_creed(self): 57 | print( 58 | """ 59 | I believe in God, 60 | the Father Almighty, 61 | Creator of Heaven and earth; 62 | and in Jesus Christ, His only Son, Our Lord, 63 | Who was conceived by the Holy Spirit, 64 | born of the Virgin Mary, 65 | suffered under Pontius Pilate, 66 | was crucified, died, and was buried. 67 | He descended into Hell, 68 | on the third day He arose again from the dead. 69 | He ascended into Heaven, 70 | and is seated at the right hand of God the Father Almighty; 71 | from thence He shall come to judge 72 | the living and the dead. 73 | I believe in the Holy Spirit, 74 | the holy Catholic Church, 75 | the communion of saints, 76 | the forgiveness of sins, 77 | the resurrection of the body, 78 | and the life everlasting. 79 | Amem. 80 | """ 81 | ) 82 | 83 | def anima_christi(self): 84 | print( 85 | """ 86 | Soul of Christ, sanctify me, 87 | Body of Christ, save me, 88 | Blood of Christ, inebriate me, 89 | Water from the side of Christ, wash me, 90 | Passion of Christ, strengthen me, 91 | O good Jesus, hear me. 92 | Hide me within your wounds, 93 | keep me close to you, 94 | defend me from the evil enemy, 95 | call me at the hour of my death, 96 | and bid me to come to you, 97 | to praise you with your saints, 98 | forever and ever. 99 | Amem. 100 | """ 101 | ) 102 | 103 | def angelus(self): 104 | print( 105 | """ 106 | The Angel of the Lord declared unto Mary. 107 | And she conceived by the Holy Spirit. 108 | 109 | Hail Mary, full of grace... 110 | 111 | Behold the handmaid of the Lord. 112 | Be it done unto me according to thy word. 113 | 114 | Hail Mary, full of grace... 115 | 116 | And the Word was made Flesh. 117 | And dwelt among us. 118 | 119 | Hail Mary, full of grace... 120 | 121 | Pray for us, O Holy Mother of God, 122 | that we may be made worthy of the promises of Christ. 123 | 124 | Let us pray. Pour forth, we beseech thee, 125 | O Lord, thy grace into our hearts, that we, 126 | to whom the Incarnation of Christ, thy son, 127 | was made known by the message of an angel, 128 | may by his passion and cross be brought to the glory of his 129 | resurrection, through the same Christ our Lord. 130 | Amem. 131 | """ 132 | ) 133 | 134 | def saint_michael(self): 135 | print( 136 | """ 137 | Saint Michael the Archangel, 138 | defend us in battle. 139 | Be our protection against 140 | the wickedness and snares of the devil. 141 | May God rebuke him, we humbly pray, 142 | and do thou, O Prince of the heavenly host, 143 | by the power of God, 144 | cast into hell Satan and all the evil spirits 145 | who prowl throuhghout the world 146 | seeking the ruin of souls. 147 | Amem. 148 | """ 149 | ) 150 | 151 | def conversion_sinners(self): 152 | print( 153 | """ 154 | Lord Jesus Christ, most merciful Savior of the world, 155 | we humbly beseech You, by Your most Sacred Heart, 156 | that all the sheep who stray out of Your fold 157 | may in one day be converted to You, 158 | the Shepherd and Bishop of their souls, who lives and reigns 159 | with God the Father in the unity of the Holy Spirit, 160 | world without end. 161 | Amem. 162 | """ 163 | ) 164 | 165 | def happy_death(self): 166 | print( 167 | """ 168 | O my Lord and Savior, 169 | support me in my last hour 170 | by the strong arms of Thy sacraments 171 | and the fragrance of thy consolations. 172 | Let Thy absolving words be said over me, 173 | and the holy oil sign and seal me; 174 | and let Thine own body be my food and Thy blood my sprinkling; 175 | and let Thy Mother Mary come to me, 176 | and my angel whisper peace to me, 177 | and Thy glorious saints and my own dear patrons smile on me, 178 | that in and through them all I may die as I desire to live, 179 | in Thy Church, in Thy faith, and in Thy love. 180 | Amen. 181 | """ 182 | ) 183 | 184 | def come_holy_spirit(self): 185 | print( 186 | """ 187 | Come Holy Spirit, 188 | fill the hearts of your faithful 189 | and kindle in them the fire of your love. 190 | Send forth your Spirit and they shall be created. 191 | And You shall renew the face of the earth. 192 | O, God, who by the light of the Holy Spirit, 193 | did instruct the hearts of the faithful, 194 | grant that by the same Holy Spirit we may be truly wise 195 | and ever enjoy His consolations, 196 | Through Christ Our Lord, 197 | Amem. 198 | """ 199 | ) 200 | 201 | def crux_sacra(self): 202 | print( 203 | """ 204 | Crux sacra sit mihi lux 205 | Non draco sit mihi dux 206 | Vade retro Sátana numquam suade mihi vana 207 | Sunt mala quae libas ipse venena bibas 208 | """ 209 | ) 210 | 211 | def hail_holy_queen(self): 212 | print( 213 | """ 214 | Hail, holy Queen, Mother of mercy, hail, our life, our sweetness and our hope. 215 | To thee do we cry, poor banished children of Eve: 216 | to thee do we send up our sighs, mourning and weeping in this vale of tears. 217 | Turn then, most gracious Advocate, thine eyes of mercy toward us, and after this our exile, 218 | show unto us the blessed fruit of thy womb, Jesus, O merciful, O loving, O sweet Virgin Mary! 219 | Amen. 220 | """ 221 | ) 222 | 223 | def random_prayer(self): 224 | prayers_list = [ 225 | self.our_father, self.hail_mary, self.glory_be, 226 | self.apostles_creed, self.anima_christi, self.angelus, 227 | self.saint_michael, self.conversion_sinners, self.happy_death, 228 | self.come_holy_spirit, self.crux_sacra, self.hail_holy_queen 229 | ] 230 | prayer = _random.choice(prayers_list) 231 | 232 | return prayer() 233 | -------------------------------------------------------------------------------- /pytholic/variety.py: -------------------------------------------------------------------------------- 1 | import re as _re 2 | import time as _time 3 | import random as _random 4 | 5 | 6 | """ 7 | Exceptions 8 | """ 9 | 10 | 11 | class __UnholyWordError(Exception): 12 | def __str__(self): 13 | print("An unholy word has been used.") 14 | 15 | 16 | class __NumberTooBigError(Exception): 17 | def __str__(self): 18 | print("I can only convert numbers as big as 9999 :(") 19 | 20 | 21 | class __WrongAnswerError(Exception): 22 | def __str__(self): 23 | print("It's not that hard :(") 24 | 25 | 26 | class __SelfDestructError(Exception): 27 | def __str__(self): 28 | print("BOOOOOOOOOOOOOOOOOMMMMMMMM.") 29 | 30 | 31 | """ 32 | Util 33 | """ 34 | 35 | 36 | def __int_to_roman(num): 37 | """Turns an int into a string containing a roman representation of that 38 | number. 39 | """ 40 | roman_numbers = [ 41 | 1000, 900, 500, 400, 42 | 100, 90, 50, 40, 43 | 10, 9, 5, 4, 44 | 1 45 | ] 46 | normal_numbers = [ 47 | "M", "CM", "D", "CD", 48 | "C", "XC", "L", "XL", 49 | "X", "IX", "V", "IV", 50 | "I" 51 | ] 52 | roman_num = '' 53 | i = 0 54 | while num > 0: 55 | for _ in range(num // roman_numbers[i]): 56 | roman_num += normal_numbers[i] 57 | num -= roman_numbers[i] 58 | i += 1 59 | return roman_num 60 | 61 | 62 | """ 63 | The cool stuff :D 64 | """ 65 | 66 | 67 | def sanctify(text: str) -> str: 68 | """It turns a given string into a latin-like version. 69 | 70 | The letter "u" is swapped by "v", normal numbers are swapped by roman numbers, all letters are capitalized. 71 | 72 | :param text: The string to be formatted. 73 | :type text: str 74 | :return: The given string, but with capital letters, v instead of u and roman numbers instead of normal numbers. 75 | :rtype: str 76 | :raises TypeError: If a value other than a string is passed as parameter. 77 | :raises UnholyWordError: If the string contains the words: satan, demon, baphomet, lucifer, 666 or devil. 78 | :raises NumberTooBig: If a number is greater than 9999. 79 | 80 | >>> text = "Hello World!, i'm 99 years old, good luck" 81 | >>> text = sanctify(text) 82 | >>> print(text) 83 | HELLO WORLD!, I'M XCIX YEARS OLD, GOOD LVCK 84 | """ 85 | if type(text) != str: 86 | raise TypeError 87 | sanctified_string = "" 88 | forbidden_words = ["satan", "demon", "baphomet", "lucifer", "666", "devil"] 89 | text_format = text.lower() 90 | 91 | # Throws an error if any of the forbidden words are used 92 | for word in forbidden_words: 93 | if word in text_format: 94 | raise __UnholyWordError 95 | 96 | # call the function to swap normal numbers into roman ones, then it swaps 97 | # those numbers within the string 98 | numbers_list = _re.findall(r'[0-9]+', text_format) 99 | numbers_list = sorted(numbers_list, reverse=True, key=len) 100 | if numbers_list is not None: 101 | for number in numbers_list: 102 | num_int = int(number) 103 | if num_int > 9999: 104 | raise __NumberTooBigError 105 | roman_number = __int_to_roman(num_int) 106 | text_format = text_format.replace(number, roman_number) 107 | 108 | # swaps "u" for "v" because in latin u == v 109 | for letter in text_format: 110 | if letter == "u": 111 | letter = "v" 112 | 113 | # sums up all the characters 114 | sanctified_string += letter 115 | 116 | # Capital letters because its baseder 117 | return sanctified_string.upper() 118 | 119 | 120 | def trinity(): 121 | """ 122 | Explanation of the doctrine of the Holy Trinity through an interactive 123 | little game. 124 | """ 125 | while True: 126 | question1 = input( 127 | "3 variables, father, son and holy_ghost, have the same value: " 128 | '"God", is it possible to say that they are all "God"?\n' 129 | "[y] Yes\n" 130 | "[n] No\n" 131 | ) 132 | 133 | if question1.lower() == "y": 134 | question2 = input( 135 | "One value in 3 different variables, one God in 3 different " 136 | "Persons, simple as.\n" 137 | "[y] Yes\n" 138 | ) 139 | 140 | if question2.lower() == "y": 141 | print("🇻🇦") 142 | break 143 | else: 144 | for countdown in range(_random.randint(3, 10), 0, -1): 145 | print("Self-destruction in ", countdown) 146 | _time.sleep(1) 147 | raise __SelfDestructError 148 | 149 | elif question1.lower() == "n": 150 | raise __WrongAnswerError 151 | else: 152 | print("Type only y or n") 153 | _time.sleep(1) 154 | continue 155 | 156 | 157 | if __name__ == "__main__": 158 | import doctest 159 | doctest.testmod() -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup, find_packages 2 | 3 | from codecs import open 4 | from os import path 5 | 6 | HERE = path.abspath(path.dirname(__file__)) 7 | 8 | with open(path.join(HERE, 'README.md'), encoding='utf-8') as f: 9 | long_description = f.read() 10 | 11 | setup( 12 | name="pytholic", 13 | version="1.0.1", 14 | description="Catholic-themed library", 15 | long_description=long_description, 16 | long_description_content_type="text/markdown", 17 | url="https://pytholic.readthedocs.io/", 18 | author="Medromenax", 19 | author_email="medromenax@gmail.com", 20 | license="MIT", 21 | classifiers=[ 22 | "Intended Audience :: Developers", 23 | "License :: OSI Approved :: MIT License", 24 | "Programming Language :: Python", 25 | "Programming Language :: Python :: 3", 26 | "Programming Language :: Python :: 3.6", 27 | "Programming Language :: Python :: 3.7", 28 | "Programming Language :: Python :: 3.8", 29 | "Programming Language :: Python :: 3.9", 30 | "Operating System :: OS Independent" 31 | ], 32 | packages=["pytholic", "pytholic/bible/"], 33 | include_package_data=True, 34 | ) 35 | -------------------------------------------------------------------------------- /tests/test_bible.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | from pytholic.bible.bible import Bible 3 | from pytholic.bible._exceptions import ChapterDoesntExistError, VerseDoesntExistError, StartVerseGreaterThanEndOneError, ChapterAndVerseMustBeIntError, EndVerseEqualToStartOneError 4 | 5 | 6 | class TestBible(unittest.TestCase): 7 | def test_matthew_prints_right_verses(self): 8 | values = ( 9 | ( 10 | 1, 1, 11 | "Roll of the genealogy of Jesus Christ, son of David, son of Abraham:" 12 | ), 13 | ( 14 | 2, 23, 15 | "There he settled in a town called Nazareth. In this way the words spoken through the prophets were to be fulfilled: He will be called a Nazarene." 16 | ), 17 | ( 18 | 9, 31, 19 | "But when they had gone away, they talked about him all over the countryside." 20 | ) 21 | ) 22 | 23 | bible = Bible() 24 | 25 | for value in values: 26 | chapter, verse, text = value 27 | self.assertEqual(bible.matthew(chapter, verse), text) 28 | 29 | def test_matthew_prints_right_verse_list(self): 30 | values = ( 31 | ( 32 | 10, 20, 23, 33 | [ 34 | '20. because it is not you who will be speaking; the Spirit of your Father will be speaking in you.', 35 | "21. 'Brother will betray brother to death, and a father his child; children will come forward against their parents and have them put to death.", 36 | '22. You will be universally hated on account of my name; but anyone who stands firm to the end will be saved.', 37 | '23. If they persecute you in one town, take refuge in the next; and if they persecute you in that, take refuge in another. In truth I tell you, you will not have gone the round of the towns of Israel before the Son of man comes.' 38 | ] 39 | ), 40 | ( 41 | 11, 29, 30, 42 | [ 43 | '29. Shoulder my yoke and learn from me, for I am gentle and humble in heart, and you will find rest for your souls.', 44 | "30. Yes, my yoke is easy and my burden light.'" 45 | ] 46 | ), 47 | ( 48 | 18, 9, 13, 49 | [ 50 | '9. And if your eye should be your downfall, tear it out and throw it away: it is better for you to enter into life with one eye, than to have two eyes and be thrown into the hell of fire. ', 51 | "10. 'See that you never despise any of these little ones, for I tell you that their angels in heaven are continually in the presence of my Father in heaven. ", 52 | '11. ', 53 | "12. 'Tell me. Suppose a man has a hundred sheep and one of them strays; will he not leave the ninety-nine on the hillside and go in search of the stray? ", 54 | '13. In truth I tell you, if he finds it, it gives him more joy than do the ninety-nine that did not stray at all. ' 55 | ] 56 | ) 57 | ) 58 | 59 | bible = Bible() 60 | 61 | for value in values: 62 | chapter, verse_start, verse_end, list = value 63 | self.assertEqual(bible.matthew( 64 | chapter, verse_start, verse_end), list) 65 | 66 | def test_mark_prints_right_verses(self): 67 | values = ( 68 | ( 69 | 1, 1, 70 | "The beginning of the gospel about Jesus Christ, the Son of God. " 71 | ), 72 | ( 73 | 8, 37, 74 | "And indeed what can anyone offer in exchange for his life? " 75 | ), 76 | ( 77 | 16, 20, 78 | "while they, going out, preached everywhere, the Lord working with them and confirming the word by the signs that accompanied it." 79 | ) 80 | ) 81 | 82 | bible = Bible() 83 | 84 | for value in values: 85 | chapter, verse, text = value 86 | self.assertEqual(bible.mark(chapter, verse), text) 87 | 88 | def test_mark_prints_right_verse_list(self): 89 | values = ( 90 | ( 91 | 1, 1, 2, 92 | [ 93 | '1. The beginning of the gospel about Jesus Christ, the Son of God. ', 94 | '2. It is written in the prophet Isaiah: Look, I am going to send my messenger in front of you to prepare your way before you. ' 95 | ] 96 | ), 97 | ( 98 | 7, 5, 7, 99 | [ 100 | "5. So the Pharisees and scribes asked him, 'Why do your disciples not respect the tradition of the elders but eat their food with unclean hands?' ", 101 | "6. He answered, 'How rightly Isaiah prophesied about you hypocrites in the passage of scripture: This people honours me only with lip-service, while their hearts are far from me. ", 102 | '7. Their reverence of me is worthless; the lessons they teach are nothing but human commandments. ' 103 | ] 104 | ), 105 | ( 106 | 16, 18, 20, 107 | [ 108 | "18. they will pick up snakes in their hands and be unharmed should they drink deadly poison; they will lay their hands on the sick, who will recover.' ", 109 | '19. And so the Lord Jesus, after he had spoken to them, was taken up into heaven; there at the right hand of God he took his place, ', 110 | '20. while they, going out, preached everywhere, the Lord working with them and confirming the word by the signs that accompanied it.' 111 | ] 112 | ) 113 | ) 114 | 115 | bible = Bible() 116 | 117 | for value in values: 118 | chapter, verse_start, verse_end, list = value 119 | self.assertEqual(bible.mark(chapter, verse_start, verse_end), list) 120 | 121 | def test_luke_prints_right_verses(self): 122 | values = ( 123 | ( 124 | 1, 1, 125 | "Seeing that many others have undertaken to draw up accounts of the events that have reached their fulfilment among us, " 126 | ), 127 | ( 128 | 11, 25, 129 | "But on arrival, finding it swept and tidied, " 130 | ), 131 | ( 132 | 24, 53, 133 | "and they were continually in the Temple praising God." 134 | ) 135 | ) 136 | 137 | bible = Bible() 138 | 139 | for value in values: 140 | chapter, verse, text = value 141 | self.assertEqual(bible.luke(chapter, verse), text) 142 | 143 | def test_luke_prints_right_verse_list(self): 144 | values = ( 145 | ( 146 | 1, 1, 2, 147 | [ 148 | '1. Seeing that many others have undertaken to draw up accounts of the events that have reached their fulfilment among us, ', 149 | '2. as these were handed down to us by those who from the outset were eyewitnesses and ministers of the word, ' 150 | ] 151 | ), 152 | ( 153 | 14, 6, 8, 154 | [ 155 | '6. And to this they could find no answer. ', 156 | '7. He then told the guests a parable, because he had noticed how they picked the places of honour. He said this, ', 157 | "8. 'When someone invites you to a wedding feast, do not take your seat in the place of honour. A more distinguished person than you may have been invited, " 158 | ] 159 | ), 160 | ( 161 | 24, 2, 3, 162 | [ 163 | '2. They found that the stone had been rolled away from the tomb, ', 164 | '3. but on entering they could not find the body of the Lord Jesus. ' 165 | ] 166 | ) 167 | ) 168 | 169 | bible = Bible() 170 | 171 | for value in values: 172 | chapter, verse_start, verse_end, list = value 173 | self.assertEqual(bible.luke(chapter, verse_start, verse_end), list) 174 | 175 | def test_john_prints_right_verses(self): 176 | values = ( 177 | ( 178 | 1, 1, 179 | "In the beginning was the Word: the Word was with God and the Word was God. " 180 | ), 181 | ( 182 | 10, 19, 183 | "These words caused a fresh division among the Jews. ", 184 | ), 185 | ( 186 | 21, 25, 187 | "There was much else that Jesus did; if it were written down in detail, I do not suppose the world itself would hold all the books that would be written." 188 | ) 189 | ) 190 | 191 | bible = Bible() 192 | 193 | for value in values: 194 | chapter, verse, text = value 195 | self.assertEqual(bible.john(chapter, verse), text) 196 | 197 | def test_john_prints_right_verse_list(self): 198 | values = ( 199 | ( 200 | 1, 1, 2, 201 | [ 202 | '1. In the beginning was the Word: the Word was with God and the Word was God. ', 203 | '2. He was with God in the beginning. ' 204 | ] 205 | ), 206 | ( 207 | 7, 20, 21, 208 | [ 209 | "20. The crowd replied, 'You are mad! Who wants to kill you?' ", 210 | "21. Jesus answered, 'One work I did, and you are all amazed at it. " 211 | ] 212 | ), 213 | ( 214 | 21, 13, 14, 215 | [ 216 | '13. Jesus then stepped forward, took the bread and gave it to them, and the same with the fish. ', 217 | '14. This was the third time that Jesus revealed himself to the disciples after rising from the dead. ' 218 | ] 219 | ) 220 | ) 221 | 222 | bible = Bible() 223 | 224 | for value in values: 225 | chapter, verse_start, verse_end, list = value 226 | self.assertEqual(bible.john(chapter, verse_start, verse_end), list) 227 | 228 | def test_bible_chapter_doenst_exist_error(self): 229 | bible = Bible() 230 | 231 | with self.assertRaises(ChapterDoesntExistError): 232 | bible.matthew(29, 1) 233 | bible.mark(17, 1) 234 | bible.luke(25, 1) 235 | bible.jonh(22, 1) 236 | 237 | def test_bible_chapter_isnt_int_error(self): 238 | bible = Bible() 239 | 240 | with self.assertRaises(ChapterAndVerseMustBeIntError): 241 | bible.matthew("a", 1) 242 | bible.mark("a", 1) 243 | bible.luke("a", 1) 244 | bible.john("a", 1) 245 | 246 | def test_bible_verse_doesnt_exist_error(self): 247 | bible = Bible() 248 | 249 | with self.assertRaises(VerseDoesntExistError): 250 | bible.matthew(1, 100) 251 | bible.mark(1, 100) 252 | bible.luke(1, 100) 253 | bible.john(1, 100) 254 | 255 | bible.matthew(1, 1, 100) 256 | bible.mark(1, 1, 100) 257 | bible.luke(1, 1, 100) 258 | bible.john(1, 1, 100) 259 | 260 | def test_bible_verse_isnt_int_error(self): 261 | bible = Bible() 262 | 263 | with self.assertRaises(ChapterAndVerseMustBeIntError): 264 | bible.matthew(1, "a") 265 | bible.mark(1, "a") 266 | bible.luke(1, "a") 267 | bible.john(1, "a") 268 | 269 | bible.matthew(1, 1, "a") 270 | bible.mark(1, 1, "a") 271 | bible.luke(1, 1, "a") 272 | bible.john(1, 1, "a") 273 | 274 | def test_bible_end_verse_is_greater_than_start_verse_error(self): 275 | bible = Bible() 276 | 277 | with self.assertRaises(StartVerseGreaterThanEndOneError): 278 | bible.matthew(1, 2, 1) 279 | bible.mark(1, 2, 1) 280 | bible.luke(1, 2, 1) 281 | bible.john(1, 2, 1) 282 | 283 | def test_bible_end_verse_is_equal_to_start_verse_error(self): 284 | bible = Bible() 285 | 286 | with self.assertRaises(EndVerseEqualToStartOneError): 287 | bible.matthew(1, 1, 1) 288 | bible.mark(1, 1, 1) 289 | bible.luke(1, 1, 1) 290 | bible.john(1, 1, 1) 291 | 292 | 293 | if __name__ == "__main__": 294 | unittest.main(verbosity=2) 295 | -------------------------------------------------------------------------------- /tests/test_sanctify.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | from pytholic.variety import sanctify, __UnholyWordError as ue, __NumberTooBigError as nb 3 | 4 | 5 | class TestSanctify(unittest.TestCase): 6 | def test_string(self): 7 | self.assertEqual((sanctify("Hello World!")), "HELLO WORLD!") 8 | 9 | def test_letter_u(self): 10 | self.assertEqual(sanctify("u"), "V") 11 | 12 | def test_numbers(self): 13 | self.assertEqual(sanctify("5, 55, 555"), "V, LV, DLV") 14 | 15 | def test_full_text(self): 16 | self.assertEqual( 17 | sanctify( 18 | "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum massa elit, ultrices volutpat " 19 | "purus consectetur, convallis commodo justo. Quisque et facilisis felis. Integer et enim eleifend, " 20 | "faucibus augue ac, pulvinar nunc. Maecenas vitae dui turpis. Etiam dignissim sodales purus a elementum." 21 | " Donec malesuada lobortis purus vitae varius. Suspendisse rutrum magna eu pretium gravida. Curabitur " 22 | "eu massa et diam imperdiet congue sit amet quis ex. Fusce at metus sem. Nulla facilisi. Nunc in lectus" 23 | " quis nisl hendrerit ullamcorper. Cras at iaculis magna, sed volutpat risus. Etiam imperdiet finibus" 24 | " ante quis laoreet."), 25 | "LOREM IPSVM DOLOR SIT AMET, CONSECTETVR ADIPISCING ELIT. VESTIBVLVM MASSA ELIT, VLTRICES VOLVTPAT" 26 | " PVRVS CONSECTETVR, CONVALLIS COMMODO JVSTO. QVISQVE ET FACILISIS FELIS. INTEGER ET ENIM ELEIFEND," 27 | " FAVCIBVS AVGVE AC, PVLVINAR NVNC. MAECENAS VITAE DVI TVRPIS. ETIAM DIGNISSIM SODALES PVRVS A " 28 | "ELEMENTVM. DONEC MALESVADA LOBORTIS PVRVS VITAE VARIVS. SVSPENDISSE RVTRVM MAGNA EV PRETIVM GRAVIDA. " 29 | "CVRABITVR EV MASSA ET DIAM IMPERDIET CONGVE SIT AMET QVIS EX. FVSCE AT METVS SEM. NVLLA FACILISI. " 30 | "NVNC IN LECTVS QVIS NISL HENDRERIT VLLAMCORPER. CRAS AT IACVLIS MAGNA, SED VOLVTPAT RISVS. ETIAM " 31 | "IMPERDIET FINIBVS ANTE QVIS LAOREET." 32 | ) 33 | 34 | def test_unholy_word_error(self): 35 | uw = ["satan", "baphomet", "devil", "666", "demon", "lucifer"] 36 | 37 | for w in uw: 38 | with self.assertRaises(ue): 39 | sanctify(w) 40 | 41 | def test_number_too_big_error(self): 42 | with self.assertRaises(nb): 43 | sanctify("1111111111111") 44 | 45 | def test_different_type(self): 46 | with self.assertRaises(TypeError): 47 | sanctify(1) --------------------------------------------------------------------------------