Transaction #13738

Hash ccdf08c74de75e2452ab9dd177131dc5483c591e8d51dce2b44f02ca19deb566
Status Success
Timestamp 403 days ago - 4/9/2023, 4:07:17 PM UTC+0
Block 13738
Stamps Used 182
Burned Fee 0.01076923 TAU
From ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89 
Contract Name submission
Function Name submit_contract

Additional Info
Nonce 105
Processor a04b5891ef8cd27095373a4f75b899ec2bc0883c02e506a6a5b55b491998cc3f
Signature 1797d4fda66969e6f2af5b69157b9cab3e6e6985ee4d51902251d3e301e5db422b8afbb5248ea2bd30241620536140405de89a9d4abea7a753649d5f50bc8c06
Stamps Supplied 845
Stamps per TAU 169

Kwargs

code I = importlib heal_requests = Variable() currency_contract = Variable() cost = Variable() owner = Variable() operator = Variable() @construct def seed(): currency_contract.set("con_trt") owner.set(ctx.caller) operator.set("5fe2a80a2d0d4d7a08603451c02ac1ef5b1d0c6b3db118933e349d90a52deb44") cost.set(100) heal_requests.set([]) @export def set_currency_contract(contract: str): assert ctx.caller == owner.get(), "Only the owner can set the currency contract" currency_contract.set(contract) @export def set_operator(new_operator: str): assert ctx.caller == owner.get(), "Only the owner can set the operator" operator.set(new_operator) @export def set_cost(new_cost: float): assert ctx.caller == owner.get(), "Only the owner can set the cost" cost.set(new_cost) @export def request_heal(): I.import_module(currency_contract.get()).transfer_from(amount=cost.get(), to="Burned", main_account=ctx.caller) # dont allow duplicate requests assert ctx.caller not in heal_requests.get(), "Request already made" heal_requests_list = heal_requests.get() heal_requests_list.append(ctx.caller) heal_requests.set(heal_requests_list) @export def heal(address: str): assert address in heal_requests.get(), "No heal request for this address" assert ctx.caller == operator.get(), "Only the operator can heal" heal_requests_list = heal_requests.get() heal_requests_list.remove(address) heal_requests.set(heal_requests_list)
name con_healer_npc_v3

State Changes

Contract con_healer_npc_v3
Variable __code__
New Value I = importlib __heal_requests = Variable(contract='con_healer_npc_v3', name='heal_requests') __currency_contract = Variable(contract='con_healer_npc_v3', name= 'currency_contract') __cost = Variable(contract='con_healer_npc_v3', name='cost') __owner = Variable(contract='con_healer_npc_v3', name='owner') __operator = Variable(contract='con_healer_npc_v3', name='operator') def ____(): __currency_contract.set('con_trt') __owner.set(ctx.caller) __operator.set( '5fe2a80a2d0d4d7a08603451c02ac1ef5b1d0c6b3db118933e349d90a52deb44') __cost.set(100) __heal_requests.set([]) @__export('con_healer_npc_v3') def set_currency_contract(contract: str): assert ctx.caller == __owner.get( ), 'Only the owner can set the currency contract' __currency_contract.set(contract) @__export('con_healer_npc_v3') def set_operator(new_operator: str): assert ctx.caller == __owner.get(), 'Only the owner can set the operator' __operator.set(new_operator) @__export('con_healer_npc_v3') def set_cost(new_cost: float): assert ctx.caller == __owner.get(), 'Only the owner can set the cost' __cost.set(new_cost) @__export('con_healer_npc_v3') def request_heal(): I.import_module(__currency_contract.get()).transfer_from(amount=__cost. get(), to='Burned', main_account=ctx.caller) assert ctx.caller not in __heal_requests.get(), 'Request already made' heal_requests_list = __heal_requests.get() heal_requests_list.append(ctx.caller) __heal_requests.set(heal_requests_list) @__export('con_healer_npc_v3') def heal(address: str): assert address in __heal_requests.get(), 'No heal request for this address' assert ctx.caller == __operator.get(), 'Only the operator can heal' heal_requests_list = __heal_requests.get() heal_requests_list.remove(address) __heal_requests.set(heal_requests_list)
 
Contract con_healer_npc_v3
Variable __compiled__
New Value e3000000000000000000000000040000004000000073b400000065005a0165026400640164028d025a0365026400640364028d025a0465026400640464028d025a0565026400640564028d025a0665026400640664028d025a076407640884005a08650964008301650a64099c01640a640b840483015a0b650964008301650a640c9c01640d640e840483015a0c650964008301650d640f9c0164106411840483015a0e65096400830164126413840083015a0f650964008301650a64149c0164156416840483015a10641753002918da11636f6e5f6865616c65725f6e70635f7633da0d6865616c5f72657175657374732902da08636f6e7472616374da046e616d65da1163757272656e63795f636f6e7472616374da04636f7374da056f776e6572da086f70657261746f72630000000000000000000000000200000043000000733800000074006a0164018301010074026a0174036a048301010074056a0164028301010074066a0164038301010074076a016700830101006400530029044eda07636f6e5f747274da4035666532613830613264306434643761303836303334353163303261633165663562316430633662336462313138393333653334396439306135326465623434e9640000002908da135f5f63757272656e63795f636f6e7472616374da03736574da075f5f6f776e6572da03637478da0663616c6c6572da0a5f5f6f70657261746f72da065f5f636f7374da0f5f5f6865616c5f7265717565737473a90072140000007214000000da00da045f5f5f5f0a000000730c00000000010a010c01040106010a01721600000029017203000000630100000000000000010000000200000043000000732400000074006a0174026a0383006b027316740464018301820174056a067c00830101006400530029024e7a2c4f6e6c7920746865206f776e65722063616e20736574207468652063757272656e637920636f6e74726163742907720f0000007210000000720e000000da03676574da0e417373657274696f6e4572726f72720c000000720d00000029017203000000721400000072140000007215000000da157365745f63757272656e63795f636f6e747261637413000000730600000000021001060172190000002901da0c6e65775f6f70657261746f72630100000000000000010000000200000043000000732400000074006a0174026a0383006b027316740464018301820174056a067c00830101006400530029024e7a234f6e6c7920746865206f776e65722063616e2073657420746865206f70657261746f722907720f0000007210000000720e000000721700000072180000007211000000720d0000002901721a000000721400000072140000007215000000da0c7365745f6f70657261746f721a000000730400000000021601721b0000002901da086e65775f636f7374630100000000000000010000000200000043000000732400000074006a0174026a0383006b027316740464018301820174056a067c00830101006400530029024e7a1f4f6e6c7920746865206f776e65722063616e207365742074686520636f73742907720f0000007210000000720e000000721700000072180000007212000000720d0000002901721c000000721400000072140000007215000000da087365745f636f737420000000730400000000021601721d000000630000000000000000010000000500000043000000735800000074006a0174026a03830083016a0474056a038300640174066a0764028d03010074066a0774086a0383006b077336740964038301820174086a0383007d007c006a0a74066a078301010074086a0b7c00830101006400530029044eda064275726e65642903da06616d6f756e74da02746fda0c6d61696e5f6163636f756e747a145265717565737420616c7265616479206d616465290cda0149da0d696d706f72745f6d6f64756c65720c0000007217000000da0d7472616e736665725f66726f6d7212000000720f000000721000000072130000007218000000da06617070656e64720d0000002901da126865616c5f72657175657374735f6c697374721400000072140000007215000000da0c726571756573745f6865616c26000000730c000000000214010c01160108010c0172270000002901da0761646472657373630100000000000000020000000200000043000000734a0000007c0074006a0183006b067314740264018301820174036a0474056a0183006b02732a740264028301820174006a0183007d017c016a067c008301010074006a077c01830101006400530029034e7a204e6f206865616c207265717565737420666f72207468697320616464726573737a1a4f6e6c7920746865206f70657261746f722063616e206865616c2908721300000072170000007218000000720f00000072100000007211000000da0672656d6f7665720d000000290272280000007226000000721400000072140000007215000000da046865616c30000000730a00000000021401160108010a01722a0000004e2911da09696d706f72746c69627222000000da085661726961626c657213000000720c0000007212000000720e00000072110000007216000000da085f5f6578706f7274da037374727219000000721b000000da05666c6f6174721d0000007227000000722a0000007214000000721400000072140000007215000000da083c6d6f64756c653e01000000732000000004010c01040108010c010c010c030809060110060601100506011005100a0601
 
Contract con_healer_npc_v3
Variable __developer__
New Value ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89
 
Contract con_healer_npc_v3
Variable __owner__
New Value null
 
Contract con_healer_npc_v3
Variable __submitted__
New Value 2023,4,9,16,7,18,0
 
Contract con_healer_npc_v3
Variable cost
New Value 100
 
Contract con_healer_npc_v3
Variable currency_contract
New Value con_trt
 
Contract con_healer_npc_v3
Variable heal_requests
New Value []
 
Contract con_healer_npc_v3
Variable operator
New Value 5fe2a80a2d0d4d7a08603451c02ac1ef5b1d0c6b3db118933e349d90a52deb44
 
Contract con_healer_npc_v3
Variable owner
New Value ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89
 
Contract currency
Variable balances
Key ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89
New Value 1759.598143498306947805153044345387