<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def currency_context(context):
 """ Use instead of context processor Context variables are only valid within the block scope """

    request = context['request']
    currency_code = memoize_nullary(lambda: get_currency_code(request))

    context['CURRENCIES'] = Currency.active.all() # querysets are already lazy
    context['CURRENCY_CODE'] = currency_code # lazy
    context['CURRENCY'] = memoize_nullary(lambda: get_currency(currency_code)) # lazy

    return ''