tx · CC69LUjxxQ6RUbNx4A6B7vQD4cHJGYsD147B2W3JyPhY

3NC9boevS259eTsMAkFAxCPorzK4Z9bpWje:  -0.01400000 Waves

2023.01.16 02:50 [2406743] smart account 3NC9boevS259eTsMAkFAxCPorzK4Z9bpWje > SELF 0.00000000 Waves

{ "type": 13, "id": "CC69LUjxxQ6RUbNx4A6B7vQD4cHJGYsD147B2W3JyPhY", "fee": 1400000, "feeAssetId": null, "timestamp": 1673826705756, "version": 2, "chainId": 84, "sender": "3NC9boevS259eTsMAkFAxCPorzK4Z9bpWje", "senderPublicKey": "515tSAyMUbAb8kKjcpGDpqALGfCgcwfWmWKKkcBKTcGB", "proofs": [ "4oMXWu6rWJweWHL1P9EvBK87E6zhCrDdTr2irDZA68CcCcjyqJGdvjQj4oRuuWD8wPUKfgSs1GZGfhJsesZjLPSh" ], "script": "base64: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AAAADWNhbGxlcmFkZHJlc3MJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAASZ2V0T3B0aW9uQ2FsbFByaWNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAVDYWxsXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwUAAAANQ2FsbF9TZXF1ZW5jZQQAAAAaZ2V0T3B0aW9uQ2FsbF9TZXF1ZW5jZWRhdGEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAD0NhbGxfU3RhcnRfRW5kXwUAAAANY2FsbGVyYWRkcmVzcwIAAAABXwUAAAANQ2FsbF9TZXF1ZW5jZQQAAAAUc3BsaXRTdGFydEVuZENvdW50ZXIJAAS1AAAAAgUAAAAaZ2V0T3B0aW9uQ2FsbF9TZXF1ZW5jZWRhdGECAAAAAV8EAAAAD2dldFN0YXJ0Q291bnRlcgkAAZEAAAACBQAAABRzcGxpdFN0YXJ0RW5kQ291bnRlcgAAAAAAAAAAAAQAAAANZ2V0RW5kQ291bnRlcgkAAZEAAAACBQAAABRzcGxpdFN0YXJ0RW5kQ291bnRlcgAAAAAAAAAAAQQAAAAYZ2V0YnRjZGF0YUF0U3RhcnRDb3VudGVyCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAAAR0aGlzCQABLAAAAAICAAAABzFtX2J0Y18FAAAAD2dldFN0YXJ0Q291bnRlcgQAAAAbc3BsaXRidGNwcmljZUF0U3RhcnRDb3VudGVyCQAEtQAAAAIFAAAAGGdldGJ0Y2RhdGFBdFN0YXJ0Q291bnRlcgIAAAABXwQAAAAZZ2V0YnRjcHJpY2VBdFN0YXJ0Q291bnRlcgkAAZEAAAACBQAAABtzcGxpdGJ0Y3ByaWNlQXRTdGFydENvdW50ZXIAAAAAAAAAAAAEAAAAFmdldGJ0Y2RhdGFBdEVuZENvdW50ZXIJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAHMW1fYnRjXwUAAAANZ2V0RW5kQ291bnRlcgQAAAAZc3BsaXRidGNwcmljZUF0RW5kQ291bnRlcgkABLUAAAACBQAAABZnZXRidGNkYXRhQXRFbmRDb3VudGVyAgAAAAFfBAAAABdnZXRidGNwcmljZUF0RW5kQ291bnRlcgkAAZEAAAACBQAAABlzcGxpdGJ0Y3ByaWNlQXRFbmRDb3VudGVyAAAAAAAAAAAABAAAAAlwcmljZWRpZmYJAABlAAAAAgkBAAAADXBhcnNlSW50VmFsdWUAAAABBQAAABdnZXRidGNwcmljZUF0RW5kQ291bnRlcgkBAAAADXBhcnNlSW50VmFsdWUAAAABBQAAABlnZXRidGNwcmljZUF0U3RhcnRDb3VudGVyAwkAAGYAAAACBQAAAAlwcmljZWRpZmYAAAAAAAAAAAAJAAACAAAAAQIAAAAOUHJpY2UgaXMgbGVzcy4JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAUQ29udHJhY3RfU3RhcnRfdmFsdWUFAAAAD2dldFN0YXJ0Q291bnRlcgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAABJDb250cmFjdF9FbmRfdmFsdWUFAAAADWdldEVuZENvdW50ZXIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAGQmxhbmsxBQAAABlnZXRidGNwcmljZUF0U3RhcnRDb3VudGVyCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAABkJsYW5rMgUAAAAXZ2V0YnRjcHJpY2VBdEVuZENvdW50ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAABERpZmYFAAAACXByaWNlZGlmZgkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA9DYWxsX1N0YXJ0X0VuZF8FAAAADWNhbGxlcmFkZHJlc3MCAAAAAV8FAAAADUNhbGxfU2VxdWVuY2UJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQUAAAASZ2V0T3B0aW9uQ2FsbFByaWNlBQAAAANuaWwAAAABaQEAAAAIY2FsbGRhdGEAAAABAAAAB0NvdW50ZXIEAAAACmdldGJ0Y2RhdGEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAHMW1fYnRjXwkAAaQAAAABBQAAAAdDb3VudGVyBAAAAAZzd2FwTGkJAAS1AAAAAgUAAAAKZ2V0YnRjZGF0YQIAAAABXwQAAAAFcHJpY2UJAAGRAAAAAgUAAAAGc3dhcExpAAAAAAAAAAAABAAAAAR0aW1lCQABkQAAAAIFAAAABnN3YXBMaQAAAAAAAAAAAQQAAAALYmxvY2toZWlnaHQJAAGRAAAAAgUAAAAGc3dhcExpAAAAAAAAAAACBAAAAANkaXYJAAGRAAAAAgUAAAAGc3dhcExpAAAAAAAAAAADCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAABXByaWNlCQABkQAAAAIFAAAABnN3YXBMaQAAAAAAAAAAAAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAR0aW1lCQABkQAAAAIFAAAABnN3YXBMaQAAAAAAAAAAAQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAtibG9ja2hlaWdodAkAAZEAAAACBQAAAAZzd2FwTGkAAAAAAAAAAAIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAADZGl2CQABkQAAAAIFAAAABnN3YXBMaQAAAAAAAAAAAwUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXl0wrCy", "height": 2406743, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5Ew8zZ4e5N2JmQ82NB9FYDo2vCNgY7P1DyjiLbMYRwee Next: FJWaNotxw57taUt1h9L95MgRvkFVeQ7ZoDUvBZ5yGef9 Diff:
OldNewDifferences
5353 let splitbtcpriceAtEndCounter = split(getbtcdataAtEndCounter, "_")
5454 let getbtcpriceAtEndCounter = splitbtcpriceAtEndCounter[0]
5555 let pricediff = (parseIntValue(getbtcpriceAtEndCounter) - parseIntValue(getbtcpriceAtStartCounter))
56-[StringEntry("Contract_Start_value", getStartCounter), StringEntry("Contract_End_value", getEndCounter), StringEntry("Blank1", getbtcpriceAtStartCounter), StringEntry("Blank2", getbtcpriceAtEndCounter), IntegerEntry("Diff", pricediff), DeleteEntry(((("Call_Start_End_" + calleraddress) + "_") + Call_Sequence)), DeleteEntry(getOptionCallPrice)]
56+ if ((pricediff > 0))
57+ then throw("Price is less.")
58+ else [StringEntry("Contract_Start_value", getStartCounter), StringEntry("Contract_End_value", getEndCounter), StringEntry("Blank1", getbtcpriceAtStartCounter), StringEntry("Blank2", getbtcpriceAtEndCounter), IntegerEntry("Diff", pricediff), DeleteEntry(((("Call_Start_End_" + calleraddress) + "_") + Call_Sequence)), DeleteEntry(getOptionCallPrice)]
5759 }
5860
5961
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func placeoptionCall () = {
88 let calleraddress = toBase58String(i.caller.bytes)
99 let read_oracle_status = getStringValue(this, "oracle_status")
1010 let read_OptionCounterID = getIntegerValue(this, "1m_contract_id")
1111 let getbtcdata = getStringValue(this, ("1m_btc_" + toString(read_OptionCounterID)))
1212 let swapLi = split(getbtcdata, "_")
1313 let price = swapLi[0]
1414 let block = parseIntValue(swapLi[2])
1515 let checkblockgap = (height - block)
1616 let OpionExpireCounter = 1
1717 let OptionExpireCounterID = (read_OptionCounterID + OpionExpireCounter)
1818 let PreviousCall = match getInteger(this, "Total_Calls") {
1919 case a: Int =>
2020 a
2121 case _ =>
2222 0
2323 }
2424 let TotalCall = (PreviousCall + 1)
2525 let PreviousUserCall = match getInteger(this, (calleraddress + "_Total_Calls")) {
2626 case a: Int =>
2727 a
2828 case _ =>
2929 0
3030 }
3131 let TotalUserCall = (PreviousUserCall + 1)
3232 if ((checkblockgap > 2))
3333 then throw("Something Wrong with Oracle or Height is not matched.")
3434 else if ((read_oracle_status == "Close"))
3535 then throw("Oracle is closed. Wait Until Oracle is Turned On.")
3636 else [StringEntry(((("Call_" + calleraddress) + "_") + toString(TotalUserCall)), price), StringEntry(((("Call_Start_End_" + calleraddress) + "_") + toString(TotalUserCall)), ((toString(read_OptionCounterID) + "_") + toString(OptionExpireCounterID))), IntegerEntry("Total_Calls", TotalCall), IntegerEntry((calleraddress + "_Total_Calls"), TotalUserCall)]
3737 }
3838
3939
4040
4141 @Callable(i)
4242 func ClaimCall (Call_Sequence) = {
4343 let calleraddress = toBase58String(i.caller.bytes)
4444 let getOptionCallPrice = getStringValue(this, ((("Call_" + calleraddress) + "_") + Call_Sequence))
4545 let getOptionCall_Sequencedata = getStringValue(this, ((("Call_Start_End_" + calleraddress) + "_") + Call_Sequence))
4646 let splitStartEndCounter = split(getOptionCall_Sequencedata, "_")
4747 let getStartCounter = splitStartEndCounter[0]
4848 let getEndCounter = splitStartEndCounter[1]
4949 let getbtcdataAtStartCounter = getStringValue(this, ("1m_btc_" + getStartCounter))
5050 let splitbtcpriceAtStartCounter = split(getbtcdataAtStartCounter, "_")
5151 let getbtcpriceAtStartCounter = splitbtcpriceAtStartCounter[0]
5252 let getbtcdataAtEndCounter = getStringValue(this, ("1m_btc_" + getEndCounter))
5353 let splitbtcpriceAtEndCounter = split(getbtcdataAtEndCounter, "_")
5454 let getbtcpriceAtEndCounter = splitbtcpriceAtEndCounter[0]
5555 let pricediff = (parseIntValue(getbtcpriceAtEndCounter) - parseIntValue(getbtcpriceAtStartCounter))
56-[StringEntry("Contract_Start_value", getStartCounter), StringEntry("Contract_End_value", getEndCounter), StringEntry("Blank1", getbtcpriceAtStartCounter), StringEntry("Blank2", getbtcpriceAtEndCounter), IntegerEntry("Diff", pricediff), DeleteEntry(((("Call_Start_End_" + calleraddress) + "_") + Call_Sequence)), DeleteEntry(getOptionCallPrice)]
56+ if ((pricediff > 0))
57+ then throw("Price is less.")
58+ else [StringEntry("Contract_Start_value", getStartCounter), StringEntry("Contract_End_value", getEndCounter), StringEntry("Blank1", getbtcpriceAtStartCounter), StringEntry("Blank2", getbtcpriceAtEndCounter), IntegerEntry("Diff", pricediff), DeleteEntry(((("Call_Start_End_" + calleraddress) + "_") + Call_Sequence)), DeleteEntry(getOptionCallPrice)]
5759 }
5860
5961
6062
6163 @Callable(i)
6264 func calldata (Counter) = {
6365 let getbtcdata = getStringValue(this, ("1m_btc_" + toString(Counter)))
6466 let swapLi = split(getbtcdata, "_")
6567 let price = swapLi[0]
6668 let time = swapLi[1]
6769 let blockheight = swapLi[2]
6870 let div = swapLi[3]
6971 [StringEntry("price", swapLi[0]), StringEntry("time", swapLi[1]), StringEntry("blockheight", swapLi[2]), StringEntry("div", swapLi[3])]
7072 }
7173
7274
7375 @Verifier(tx)
7476 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
7577

github/deemru/w8io/026f985 
22.11 ms