Transaction #947790

Hash 2bbd819c528c9aa701ac460ca5c35cadc1dc63a045f1febea006e768b6860921
Status Success
Timestamp 678 days ago - 7/11/2022, 5:22:21 PM UTC+0
Block 899978
Stamps Used 231
Burned Fee 0.01366864 TAU
From ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89 
Contract Name submission
Function Name submit_contract

Additional Info
SubBlock Number 0
Nonce 1585
Processor 5b09493df6c18d17cc883ebce54fcb1f5afbd507533417fe32c006009a9c3c4a
Signature b4bda4eb9b93c60108cb6cab8fc22f58511bc6efdbc0dacb287e271f117706529e0fd8c65a1152c55073eb14736100957d685ead3e00269c94f679b852e7fe0f
Stamps Supplied 845
Stamps per TAU 169

Kwargs

code #con_altswap - Unique DEX featuring multi-token pools with weights #con_altswap_lst001_1 #con_altswap_sale import currency as tau import con_altswap_lst001_1 as alp tau_balances = ForeignHash(foreign_contract='currency', foreign_name='balances') owner = Variable() price = Variable() quantity = Variable() @construct def seed(): price.set(2) quantity.set(600_000) owner.set(ctx.caller) @export def set_sale_price(sale_price: float): error = "Only owner can update this" assert ctx.caller == owner.get(), error price.set(sale_price) @export def set_sale_quantity(sale_quantity: int): error = "Only owner can update this" assert ctx.caller == owner.get(), error quantity.set(sale_quantity) @export def purchase(amount_tau: float): assert amount_tau > 0, 'Cannot purchase negative amounts!' purchaser = ctx.caller assert tau_balances[purchaser] >= amount_tau, 'Not enough tau!' amount = amount_tau / price.get() assert quantity.get() > amount, 'Not enough remaining' quantity.set(quantity.get() - amount) tau.transfer_from(amount_tau, ctx.this, purchaser) alp.transfer(amount, purchaser) @export def pay_out_alp(amount: float): error = "Negative amount is not allowed" assert amount > 0, error error = "Only owner can payout tokens" assert ctx.caller == owner.get(), error # Transfer tokens from contract to owner alp.transfer( amount=amount, to=ctx.caller) @export def pay_out_tau(amount: float): error = "Negative amount is not allowed" assert amount > 0, error error = "Only owner can payout tokens" assert ctx.caller == owner.get(), error # Transfer tokens from contract to owner tau.transfer( amount=amount, to=ctx.caller) @export def change_ownership(new_owner: str): assert ctx.caller == owner.get(), 'Only the owner can change ownership!' owner.set(new_owner)
name con_altswap_sale

State Changes

Contract con_altswap_sale
Variable price
New Value 2
 
Contract con_altswap_sale
Variable quantity
New Value 600000
 
Contract con_altswap_sale
Variable owner
New Value ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89
 
Contract con_altswap_sale
Variable __code__
New Value import currency as tau import con_altswap_lst001_1 as alp __tau_balances = ForeignHash(foreign_contract='currency', foreign_name= 'balances', contract='con_altswap_sale', name='tau_balances') __owner = Variable(contract='con_altswap_sale', name='owner') __price = Variable(contract='con_altswap_sale', name='price') __quantity = Variable(contract='con_altswap_sale', name='quantity') def ____(): __price.set(2) __quantity.set(600000) __owner.set(ctx.caller) @__export('con_altswap_sale') def set_sale_price(sale_price: float): error = 'Only owner can update this' assert ctx.caller == __owner.get(), error __price.set(sale_price) @__export('con_altswap_sale') def set_sale_quantity(sale_quantity: int): error = 'Only owner can update this' assert ctx.caller == __owner.get(), error __quantity.set(sale_quantity) @__export('con_altswap_sale') def purchase(amount_tau: float): assert amount_tau > 0, 'Cannot purchase negative amounts!' purchaser = ctx.caller assert __tau_balances[purchaser] >= amount_tau, 'Not enough tau!' amount = amount_tau / __price.get() assert __quantity.get() > amount, 'Not enough remaining' __quantity.set(__quantity.get() - amount) tau.transfer_from(amount_tau, ctx.this, purchaser) alp.transfer(amount, purchaser) @__export('con_altswap_sale') def pay_out_alp(amount: float): error = 'Negative amount is not allowed' assert amount > 0, error error = 'Only owner can payout tokens' assert ctx.caller == __owner.get(), error alp.transfer(amount=amount, to=ctx.caller) @__export('con_altswap_sale') def pay_out_tau(amount: float): error = 'Negative amount is not allowed' assert amount > 0, error error = 'Only owner can payout tokens' assert ctx.caller == __owner.get(), error tau.transfer(amount=amount, to=ctx.caller) @__export('con_altswap_sale') def change_ownership(new_owner: str): assert ctx.caller == __owner.get(), 'Only the owner can change ownership!' __owner.set(new_owner)
 
Contract con_altswap_sale
Variable __compiled__
New Value e3000000000000000000000000060000004000000073d4000000640064016c005a01640064016c025a036504640264036404640564068d045a0565066404640764088d025a0765066404640964088d025a0865066404640a64088d025a09640b640c84005a0a650b64048301650c640d9c01640e640f840483015a0d650b64048301650e64109c0164116412840483015a0f650b64048301650c64139c0164146415840483015a10650b64048301650c64169c0164176418840483015a11650b64048301650c64169c016419641a840483015a12650b640483016513641b9c01641c641d840483015a1464015300291ee9000000004eda0863757272656e6379da0862616c616e636573da10636f6e5f616c74737761705f73616c65da0c7461755f62616c616e6365732904da10666f726569676e5f636f6e7472616374da0c666f726569676e5f6e616d65da08636f6e7472616374da046e616d65da056f776e6572290272080000007209000000da057072696365da087175616e74697479630000000000000000000000000200000043000000732400000074006a0164018301010074026a0164028301010074036a0174046a05830101006400530029034ee90200000069c02709002906da075f5f7072696365da03736574da0a5f5f7175616e74697479da075f5f6f776e6572da03637478da0663616c6c6572a90072140000007214000000da00da045f5f5f5f0a000000730600000000010a010a0172160000002901da0a73616c655f7072696365630100000000000000020000000200000043000000732800000064017d0174006a0174026a0383006b02731a74047c018301820174056a067c00830101006400530029024e7a1a4f6e6c79206f776e65722063616e2075706461746520746869732907721200000072130000007211000000da03676574da0e417373657274696f6e4572726f72720e000000720f00000029027217000000da056572726f72721400000072140000007215000000da0e7365745f73616c655f7072696365100000007306000000000204011601721b0000002901da0d73616c655f7175616e74697479630100000000000000020000000200000043000000732800000064017d0174006a0174026a0383006b02731a74047c018301820174056a067c00830101006400530029024e7a1a4f6e6c79206f776e65722063616e2075706461746520746869732907721200000072130000007211000000721800000072190000007210000000720f0000002902721c000000721a000000721400000072140000007215000000da117365745f73616c655f7175616e74697479170000007306000000000204011601721d0000002901da0a616d6f756e745f746175630100000000000000030000000400000043000000737c0000007c0064016b047310740064028301820174016a027d0174037c0119007c006b05732a74006403830182017c0074046a0583001b007d0274066a0583007c026b04734a740064048301820174066a0774066a0583007c0218008301010074086a097c0074016a0a7c0183030100740b6a0c7c027c01830201006400530029054e72010000007a2143616e6e6f74207075726368617365206e6567617469766520616d6f756e7473217a0f4e6f7420656e6f75676820746175217a144e6f7420656e6f7567682072656d61696e696e67290d721900000072120000007213000000da0e5f5f7461755f62616c616e636573720e00000072180000007210000000720f000000da03746175da0d7472616e736665725f66726f6dda0474686973da03616c70da087472616e736665722903721e000000da09707572636861736572da06616d6f756e74721400000072140000007215000000da0870757263686173651e000000731000000000021001060114010c01140112011001722700000029017226000000630100000000000000020000000400000043000000734200000064017d017c0064026b04731474007c018301820164037d0174016a0274036a0483006b02732e74007c018301820174056a067c0074016a0264048d0201006400530029054e7a1e4e6567617469766520616d6f756e74206973206e6f7420616c6c6f77656472010000007a1c4f6e6c79206f776e65722063616e207061796f757420746f6b656e7329027226000000da02746f2907721900000072120000007213000000721100000072180000007223000000722400000029027226000000721a000000721400000072140000007215000000da0b7061795f6f75745f616c702a000000730a000000000204011001040116017229000000630100000000000000020000000400000043000000734200000064017d017c0064026b04731474007c018301820164037d0174016a0274036a0483006b02732e74007c018301820174056a067c0074016a0264048d0201006400530029054e7a1e4e6567617469766520616d6f756e74206973206e6f7420616c6c6f77656472010000007a1c4f6e6c79206f776e65722063616e207061796f757420746f6b656e732902722600000072280000002907721900000072120000007213000000721100000072180000007220000000722400000029027226000000721a000000721400000072140000007215000000da0b7061795f6f75745f74617533000000730a00000000020401100104011601722a0000002901da096e65775f6f776e6572630100000000000000010000000200000043000000732400000074006a0174026a0383006b027316740464018301820174026a057c00830101006400530029024e7a244f6e6c7920746865206f776e65722063616e206368616e6765206f776e65727368697021290672120000007213000000721100000072180000007219000000720f0000002901722b000000721400000072140000007215000000da106368616e67655f6f776e6572736869703c000000730400000000021601722c000000291572020000007220000000da14636f6e5f616c74737761705f6c73743030315f317223000000da0b466f726569676e48617368721f000000da085661726961626c657211000000720e00000072100000007216000000da085f5f6578706f7274da05666c6f6174721b000000da03696e74721d00000072270000007229000000722a000000da03737472722c0000007214000000721400000072140000007215000000da083c6d6f64756c653e0100000073260000000801080104010c010c010c010c03080606011006060110060601100b06011008060110080601
 
Contract con_altswap_sale
Variable __owner__
New Value null
 
Contract con_altswap_sale
Variable __submitted__
New Value 2022,7,11,17,22,22,0
 
Contract con_altswap_sale
Variable __developer__
New Value ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89
 
Contract currency
Variable balances
Key ff61544ea94eaaeb5df08ed863c4a938e9129aba6ceee5f31b6681bdede11b89
New Value 196.287851980056558600274371546436