├── .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 |
4 |
5 |
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 | 
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)
--------------------------------------------------------------------------------