tx · E4KxRLeF7KQ1inZVsNu36ia15HEqSV6KXFdvW1SPw375 3P4KBJT1v7EKubb5Dvij88FgpDBmJ21RPBR: -0.01000000 Waves 2023.03.02 02:38 [3537147] smart account 3P4KBJT1v7EKubb5Dvij88FgpDBmJ21RPBR > SELF 0.00000000 Waves
{ "type": 13, "id": "E4KxRLeF7KQ1inZVsNu36ia15HEqSV6KXFdvW1SPw375", "fee": 1000000, "feeAssetId": null, "timestamp": 1677713983909, "version": 2, "chainId": 87, "sender": "3P4KBJT1v7EKubb5Dvij88FgpDBmJ21RPBR", "senderPublicKey": "EJ6kVs5NZQFA4cCHHhvVMfrvHXu4RdB1RiVHNrGkYYsU", "proofs": [ "3Gi8aUaPdQhsehHFgvvQa1gjxoT45ftgNmPn27bEbw3ADbMrtQ2tQoRw7L4mC834pdh8c71dEdsenS8Ypeyakx2J" ], "script": "base64:BgICCAIBARRmaW5hbGl6ZVd4VXNkT25jaGFpbgEPd2F2ZXNVc2RQcmljZVg2BA5kb3JhQWRkcmVzc1N0cgIjM1BLa29qS2RkNkJCelRmMVJYYlFWZlVEcmFORlhYSEt6UUYEC2RvcmFBZGRyZXNzCQERQGV4dHJOYXRpdmUoMTA2MikBBQ5kb3JhQWRkcmVzc1N0cgQNeHRuVXNkUHJpY2VYNgkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCaCAIFC2RvcmFBZGRyZXNzAhYlcyVzX19wcmljZV9fVVNETi1VU0RUAiRET1JBIGRvZXNuJ3QgY29udGFpbiBVU0ROL1VTRFQgcHJpY2UECHh0bklkU3RyAixERzJ4RmtQZER3S1VvQmt6R0FoUXRMcFNHemZYTGlDWVBFemVLSDJBZDI0cAQGdXNkdElkAiwzNE45WWNFRVRMV245M3FZUTY0RXNQMXg4OXRTcnVKVTQ0UnJFTVNYWEVQSgQHd3hJZFN0cgIsQXRxdjU5RVl6akZHdWl0S1ZuTVJrNkg4RnVram9WM2t0UG9yYkV5czI1b24EBXh0bklkCQDZBAEFCHh0bklkU3RyBAR3eElkCQDZBAEFB3d4SWRTdHIEFXd4X1d4V2F2ZXNfQWRkcmVzc1N0cgIjM1BGemFIMmdocHdBTkhGZ2pldmE4M04xeXh6RXJFTHgyZWgEEnd4X1d4V2F2ZXNfQWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQUVd3hfV3hXYXZlc19BZGRyZXNzU3RyBBF3eF9XeFdhdmVzX1dlaWdodADQhgMEEnd4X1d4V2F2ZXNfV0FWRVN4OAgJAO8HAQUSd3hfV3hXYXZlc19BZGRyZXNzB3JlZ3VsYXIED3d4X1d4V2F2ZXNfV1h4OAkA8AcCBRJ3eF9XeFdhdmVzX0FkZHJlc3MFBHd4SWQEF3d4X1d4V2F2ZXNfV3hVc2RQcmljZVg2CQBrAwUSd3hfV3hXYXZlc19XQVZFU3g4BQ93YXZlc1VzZFByaWNlWDYFD3d4X1d4V2F2ZXNfV1h4OAQTd3hfV3hYdG5fQWRkcmVzc1N0cgIjM1BDRU5wRUtlOGF0d0VMWjdvQ1NtY2RFZmNSdUtUclV4OTkEEHd4X1d4WHRuX0FkZHJlc3MJARFAZXh0ck5hdGl2ZSgxMDYyKQEFE3d4X1d4WHRuX0FkZHJlc3NTdHIED3d4X1d4WHRuX1dlaWdodADQhgMEDnd4X1d4WHRuX1hUTng2CQDwBwIFEHd4X1d4WHRuX0FkZHJlc3MFBXh0bklkBA13eF9XeFh0bl9XWHg4CQDwBwIFEHd4X1d4WHRuX0FkZHJlc3MFBHd4SWQEFXd4X1d4WHRuX1d4VXNkUHJpY2VYNgkAawMJAGgCBQ53eF9XeFh0bl9YVE54NgBkBQ14dG5Vc2RQcmljZVg2BQ13eF9XeFh0bl9XWHg4BBVzd29wX1d4WHRuX0FkZHJlc3NTdHICIzNQS2k0RzNWWDJrNDJaU21OTnJtdmdkREg3SnpSYVVoWTdSBAxzd29wUmVzdERhcHAJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQNTZqTlF6RUNYbnJXcG5iYlNKS3c3RW9vbzZma1VhTVBwBBFzd29wX1d4WHRuX1dlaWdodACIJwQXc3dvcF9XeFh0bl9XeFh0blByaWNlWDYKAAFACQD8BwQFDHN3b3BSZXN0RGFwcAIRY2FsY0dldEFtb3VudENQTU0JAMwIAgUVc3dvcF9XeFh0bl9BZGRyZXNzU3RyCQDMCAICIzNQODhxazFLekYxQktqRDdmQzdMak5WQUtNNGV6ZmY1V0U2CQDMCAIFB3d4SWRTdHIJAMwIAgCAwtcvBQNuaWwFA25pbAMJAAECBQFAAgNJbnQFAUAJAAIBCQCsAgIJAAMBBQFAAhggY291bGRuJ3QgYmUgY2FzdCB0byBJbnQEF3N3b3BfV3hYdG5fV3hVc2RQcmljZVg2CQBrAwUXc3dvcF9XeFh0bl9XeFh0blByaWNlWDYFDXh0blVzZFByaWNlWDYAwIQ9CQDMCAIFF3d4X1d4V2F2ZXNfV3hVc2RQcmljZVg2CQDMCAIFFXd4X1d4WHRuX1d4VXNkUHJpY2VYNgkAzAgCBRdzd29wX1d4WHRuX1d4VXNkUHJpY2VYNgUDbmlsAADkbAk3", "height": 3537147, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9mexF1uRQUdkDeDRnKgUBVmkKELNcF8XAg482viq6NpY Next: E4dhMdn5rPbg5jjX57xUW7SWMfaFA7PFt4ToEBYQmjno Diff:
Old | New | Differences | |
---|---|---|---|
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | func finalizeWxUsdOnchain (wavesUsdPriceX6) = { | |
5 | - | let xtnUsdPriceX6 = 200000 | |
5 | + | let doraAddressStr = "3PKkojKdd6BBzTf1RXbQVfUDraNFXXHKzQF" | |
6 | + | let doraAddress = addressFromStringValue(doraAddressStr) | |
7 | + | let xtnUsdPriceX6 = valueOrErrorMessage(getInteger(doraAddress, "%s%s__price__USDN-USDT"), "DORA doesn't contain USDN/USDT price") | |
6 | 8 | let xtnIdStr = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p" | |
7 | 9 | let usdtId = "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ" | |
8 | 10 | let wxIdStr = "Atqv59EYzjFGuitKVnMRk6H8FukjoV3ktPorbEys25on" | |
20 | 22 | let wx_WxXtn_XTNx6 = assetBalance(wx_WxXtn_Address, xtnId) | |
21 | 23 | let wx_WxXtn_WXx8 = assetBalance(wx_WxXtn_Address, wxId) | |
22 | 24 | let wx_WxXtn_WxUsdPriceX6 = fraction((wx_WxXtn_XTNx6 * 100), xtnUsdPriceX6, wx_WxXtn_WXx8) | |
23 | - | let | |
24 | - | let | |
25 | - | let | |
26 | - | let | |
27 | - | let @ = invoke( | |
25 | + | let swop_WxXtn_AddressStr = "3PKi4G3VX2k42ZSmNNrmvgdDH7JzRaUhY7R" | |
26 | + | let swopRestDapp = addressFromStringValue("3P56jNQzECXnrWpnbbSJKw7Eooo6fkUaMPp") | |
27 | + | let swop_WxXtn_Weight = 5000 | |
28 | + | let swop_WxXtn_WxXtnPriceX6 = { | |
29 | + | let @ = invoke(swopRestDapp, "calcGetAmountCPMM", [swop_WxXtn_AddressStr, "3P88qk1KzF1BKjD7fC7LjNVAKM4ezff5WE6", wxIdStr, 100000000], nil) | |
28 | 30 | if ($isInstanceOf(@, "Int")) | |
29 | 31 | then @ | |
30 | 32 | else throw(($getType(@) + " couldn't be cast to Int")) | |
31 | 33 | } | |
32 | - | [wx_WxWaves_WxUsdPriceX6, wx_WxXtn_WxUsdPriceX6, swopWxXtnPriceX6] | |
34 | + | let swop_WxXtn_WxUsdPriceX6 = fraction(swop_WxXtn_WxXtnPriceX6, xtnUsdPriceX6, 1000000) | |
35 | + | [wx_WxWaves_WxUsdPriceX6, wx_WxXtn_WxUsdPriceX6, swop_WxXtn_WxUsdPriceX6] | |
33 | 36 | } | |
34 | 37 | ||
35 | 38 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | func finalizeWxUsdOnchain (wavesUsdPriceX6) = { | |
5 | - | let xtnUsdPriceX6 = 200000 | |
5 | + | let doraAddressStr = "3PKkojKdd6BBzTf1RXbQVfUDraNFXXHKzQF" | |
6 | + | let doraAddress = addressFromStringValue(doraAddressStr) | |
7 | + | let xtnUsdPriceX6 = valueOrErrorMessage(getInteger(doraAddress, "%s%s__price__USDN-USDT"), "DORA doesn't contain USDN/USDT price") | |
6 | 8 | let xtnIdStr = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p" | |
7 | 9 | let usdtId = "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ" | |
8 | 10 | let wxIdStr = "Atqv59EYzjFGuitKVnMRk6H8FukjoV3ktPorbEys25on" | |
9 | 11 | let xtnId = fromBase58String(xtnIdStr) | |
10 | 12 | let wxId = fromBase58String(wxIdStr) | |
11 | 13 | let wx_WxWaves_AddressStr = "3PFzaH2ghpwANHFgjeva83N1yxzErELx2eh" | |
12 | 14 | let wx_WxWaves_Address = addressFromStringValue(wx_WxWaves_AddressStr) | |
13 | 15 | let wx_WxWaves_Weight = 50000 | |
14 | 16 | let wx_WxWaves_WAVESx8 = wavesBalance(wx_WxWaves_Address).regular | |
15 | 17 | let wx_WxWaves_WXx8 = assetBalance(wx_WxWaves_Address, wxId) | |
16 | 18 | let wx_WxWaves_WxUsdPriceX6 = fraction(wx_WxWaves_WAVESx8, wavesUsdPriceX6, wx_WxWaves_WXx8) | |
17 | 19 | let wx_WxXtn_AddressStr = "3PCENpEKe8atwELZ7oCSmcdEfcRuKTrUx99" | |
18 | 20 | let wx_WxXtn_Address = addressFromStringValue(wx_WxXtn_AddressStr) | |
19 | 21 | let wx_WxXtn_Weight = 50000 | |
20 | 22 | let wx_WxXtn_XTNx6 = assetBalance(wx_WxXtn_Address, xtnId) | |
21 | 23 | let wx_WxXtn_WXx8 = assetBalance(wx_WxXtn_Address, wxId) | |
22 | 24 | let wx_WxXtn_WxUsdPriceX6 = fraction((wx_WxXtn_XTNx6 * 100), xtnUsdPriceX6, wx_WxXtn_WXx8) | |
23 | - | let | |
24 | - | let | |
25 | - | let | |
26 | - | let | |
27 | - | let @ = invoke( | |
25 | + | let swop_WxXtn_AddressStr = "3PKi4G3VX2k42ZSmNNrmvgdDH7JzRaUhY7R" | |
26 | + | let swopRestDapp = addressFromStringValue("3P56jNQzECXnrWpnbbSJKw7Eooo6fkUaMPp") | |
27 | + | let swop_WxXtn_Weight = 5000 | |
28 | + | let swop_WxXtn_WxXtnPriceX6 = { | |
29 | + | let @ = invoke(swopRestDapp, "calcGetAmountCPMM", [swop_WxXtn_AddressStr, "3P88qk1KzF1BKjD7fC7LjNVAKM4ezff5WE6", wxIdStr, 100000000], nil) | |
28 | 30 | if ($isInstanceOf(@, "Int")) | |
29 | 31 | then @ | |
30 | 32 | else throw(($getType(@) + " couldn't be cast to Int")) | |
31 | 33 | } | |
32 | - | [wx_WxWaves_WxUsdPriceX6, wx_WxXtn_WxUsdPriceX6, swopWxXtnPriceX6] | |
34 | + | let swop_WxXtn_WxUsdPriceX6 = fraction(swop_WxXtn_WxXtnPriceX6, xtnUsdPriceX6, 1000000) | |
35 | + | [wx_WxWaves_WxUsdPriceX6, wx_WxXtn_WxUsdPriceX6, swop_WxXtn_WxUsdPriceX6] | |
33 | 36 | } | |
34 | 37 | ||
35 | 38 | ||
36 | 39 |
github/deemru/w8io/3ef1775 29.18 ms ◑