@staticmethod<EOL><INDENT>def go(function_expr, **kwargs):<DEDENT>
if '<STR_LIT:.>' in function_expr:<EOL><INDENT>tech, service_type, function_name = function_expr.split('<STR_LIT:.>')<EOL><DEDENT>else:<EOL><INDENT>tech = kwargs.pop('<STR_LIT>')<EOL>service_type = kwargs.get('<STR_LIT>')<EOL>function_name = function_expr<EOL><DEDENT>@sts_conn(tech, service_type=service_type)<EOL>def wrapped_method(function_name, **nargs):<EOL><INDENT>service_type = nargs.pop(nargs.pop('<STR_LIT>', '<STR_LIT>'))<EOL>return getattr(service_type, function_name)(**nargs)<EOL><DEDENT>return wrapped_method(function_name, **kwargs)<EOL>
CloudAux.go(
    'list_aliases',
    **{
        'account_number': '000000000000',
        'assume_role': 'role_name',
        'session_name': 'cloudaux',
        'region': 'us-east-1',
        'tech': 'kms',
        'service_type': 'client'
    })

CloudAux.go(
    'kms.client.list_aliases',
    **{
        'account_number': '000000000000',
        'assume_role': 'role_name',
        'session_name': 'cloudaux',
        'region': 'us-east-1'
    })