Transaction Details


Transaction Hash
6489358fa7455653b5a523e4a2ca88cb3c48eb3ebca6e5709b924b83b448ed97 ↗ Base Sepolia
Transaction Index
19
From
0xe1288759446298f250c3bce5616706d25525ba7f
Block Height
34290097

Transaction Data

{'p': 'zentest3', 'f': 'function_snippet', 'a': ["def asset_create(info, args):\n assert args['f'] == 'asset_create'\n sender = info['sender']\n tick = args['a'][0]\n assert type(tick) is str\n assert len(tick) > 0 and len(tick) < 42\n assert tick[0] in string.ascii_uppercase\n assert set(tick) <= set(string.ascii_uppercase+string.digits+'_')\n addr = handle_lookup(sender)\n owner, _ = get('asset', 'owner', None, tick)\n assert not owner\n\n put(addr, 'asset', 'owner', addr, tick)\n put(addr, 'asset', 'functions', ['asset_update_ownership', 'asset_update_functions'], tick)\n\ndef asset_update_ownership(info, args):\n assert args['f'] == 'asset_update_ownership'\n sender = info['sender']\n tick = args['a'][0]\n receiver = args['a'][1]\n assert type(tick) is str\n assert len(tick) > 0 and len(tick) < 42\n assert tick[0] in string.ascii_uppercase\n assert set(tick) <= set(string.ascii_uppercase+string.digits+'_')\n addr = handle_lookup(sender)\n owner, _ = get('asset', 'owner', None, tick)\n assert owner == addr\n\n # DO THIS to change the owner using receiver's Zentra token\n functions, _ = get('asset', 'functions', None, tick)\n assert type(functions) is list\n assert functions\n put(receiver, 'asset', 'owner', receiver, tick)\n put(receiver, 'asset', 'functions', functions, tick)\n\n\ndef asset_update_functions(info, args):\n assert args['f'] == 'asset_update_functions'\n sender = info['sender']\n addr = handle_lookup(sender)\n\n tick = args['a'][0]\n assert type(tick) is str\n assert len(tick) > 0 and len(tick) < 42\n assert tick[0] in string.ascii_uppercase\n assert set(tick) <= set(string.ascii_uppercase+string.digits+'_')\n owner, _ = get('asset', 'owner', None, tick)\n assert owner == addr\n\n functions = args['a'][1]\n assert type(functions) is list\n assert functions\n put(addr, 'asset', 'functions', functions, tick)\n\ndef asset_batch_create(info, args):\n assert args['f'] == 'asset_batch_create'\n sender = info['sender']\n addr = handle_lookup(sender)\n committee_members, _ = get('committee', 'members', [])\n committee_members = set(committee_members)\n assert addr in committee_members\n\n ticks = args['a'][0]\n assert type(tick) is list\n for tick in ticks:\n assert type(tick) is str\n assert len(tick) > 0 and len(tick) < 42\n assert tick[0] in string.ascii_uppercase\n assert set(tick) <= set(string.ascii_uppercase+string.digits+'_')\n addr = handle_lookup(sender)\n owner, _ = get('asset', 'owner', None, tick)\n assert not owner\n\n put(addr, 'asset', 'owner', addr, tick)\n put(addr, 'asset', 'functions', ['asset_update_ownership', 'asset_update_functions'], tick)\n"]}

Events

[['function_snippet', 'NewFunctionSnippet', '450391cfb7d02cb4e8f3d94e0108f8734e39e2cbba7aacda8c466fa38356d7d2']]