# Path: zengine/log.py

# 
# Path: zengine/config.py



from datetime import datetime
from collections import defaultdict
from babel import Locale, UnknownLocaleError, dates, numbers, lists
from babel.support import LazyProxy
from zengine.log import log
from zengine.config import settings
import gettext as gettextlib
import six

    However, this is undesireable if some operations need to be done on these strings before
    they are translated:

    >>> fruits[0] == 'apple'
    False

    In this case, the strings can be marked using this function, and translated later with gettext.
    >>> from zengine.lib.translation import markonly as N_
    >>> fruits = [N_('apple'), N_('banana'), N_('orange')]
    >>> fruits[0] == 'apple'
    True
    >>> for fruit in fruits: print(_(fruit))
    elma
    muz
    portakal

    Args:
        message (unicode): The input message.
    Returns:
        unicode: The input message, with no modifications. To do the actual translation,
            gettext should be called on this string when needed.
    """
    return message


def _wrap_locale_formatter(fn, locale_type):
    """Wrap a Babel data formatting function to automatically format
    for currently installed locale."""


# Path: zengine/log.py

# 
# Path: zengine/config.py



# Path: zengine/lib/translation.py
from datetime import datetime
from collections import defaultdict
from babel import Locale, UnknownLocaleError, dates, numbers, lists
from babel.support import LazyProxy
from zengine.log import log
from zengine.config import settings
import gettext as gettextlib
import six


    However, this is undesireable if some operations need to be done on these strings before
    they are translated:

    >>> fruits[0] == 'apple'
    False

    In this case, the strings can be marked using this function, and translated later with gettext.
    >>> from zengine.lib.translation import markonly as N_
    >>> fruits = [N_('apple'), N_('banana'), N_('orange')]
    >>> fruits[0] == 'apple'
    True
    >>> for fruit in fruits: print(_(fruit))
    elma
    muz
    portakal

    Args:
        message (unicode): The input message.
    Returns:
        unicode: The input message, with no modifications. To do the actual translation,
            gettext should be called on this string when needed.
    """
    return message


def _wrap_locale_formatter(fn, locale_type):
    """Wrap a Babel data formatting function to automatically format
    for currently installed locale."""


    def wrapped_locale_formatter(*args, **kwargs):