tx · HURkJMycQXQsJw5SXMLfYv4H9eUEENkjFRE3iUxPCQWp

3NCEnW5hTnRQ7J9TFQsHS4W92f54PCCWQvN:  -0.01400000 Waves

2020.02.03 14:43 [882935] smart account 3NCEnW5hTnRQ7J9TFQsHS4W92f54PCCWQvN > SELF 0.00000000 Waves

{ "type": 13, "id": "HURkJMycQXQsJw5SXMLfYv4H9eUEENkjFRE3iUxPCQWp", "fee": 1400000, "feeAssetId": null, "timestamp": 1580730266399, "version": 1, "sender": "3NCEnW5hTnRQ7J9TFQsHS4W92f54PCCWQvN", "senderPublicKey": "8PUyJHGVRUxhY118c4H5isGCGLYgRBmcSzNYooDAqwh", "proofs": [ "5LerMgCvMryFxEMyK42Duj7MvvsvAXUqL6JhnmZEjixDDtdzZzjQCMvwPbhK8WwBhkxsnek6azs5HPMjyrwsP4xH" ], "script": "base64:AAIDAAAAAAAAAAcIARIDCgEIAAAAAAAAAAEAAAABaQEAAAAUdHJ5R2V0NjAwU2Vjb25kc0xvY2sAAAABAAAACGxvY2tOYW1lBAAAAA1sb2NrVW50aWxOYW1lCQABLAAAAAIFAAAACGxvY2tOYW1lAgAAAAYvdW50aWwEAAAAA25vdwQAAAAHJG1hdGNoMAkAA+0AAAABBQAAAAZoZWlnaHQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACUJsb2NrSW5mbwQAAAABYgUAAAAHJG1hdGNoMAgFAAAAAWIAAAAJdGltZXN0YW1wAAAAAAAAAAAABAAAAAhsb2NrZWRCeQQAAAAHJG1hdGNoMAkABBwAAAACBQAAAAR0aGlzBQAAAAhsb2NrTmFtZQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAKQnl0ZVZlY3RvcgQAAAABYgUAAAAHJG1hdGNoMAUAAAABYggIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAALbG9ja2VkVW50aWwEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAANbG9ja1VudGlsTmFtZQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAV1bnRpbAUAAAAHJG1hdGNoMAUAAAAFdW50aWwAAAAAAAAAAAAEAAAAB2NhbkxvY2sDCQAAZgAAAAIFAAAAA25vdwUAAAALbG9ja2VkVW50aWwGCQAAAAAAAAIFAAAACGxvY2tlZEJ5CAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzAwUAAAAHY2FuTG9jawkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAIbG9ja05hbWUICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAADWxvY2tVbnRpbE5hbWUJAABkAAAAAgUAAAADbm93AAAAAAAAAAJYBQAAAANuaWwJAAACAAAAAQIAAAAZQWxyZWFkeSBsb2NrZWQgYnkgYW5vdGhlcgAAAABplNu0", "chainId": 84, "height": 882935, "spentComplexity": 0 } View: original | compacted Prev: 8DRYuJaQCiMYgsWw4YpNMtQN7QfKKrmMVkxaTqYB8L2w Next: W8MCsbjMoyEDj4vhLsWUZRoSHm6CNzo6doWc9v5WCZ2 Diff:
OldNewDifferences
2929 else (lockedBy == i.caller.bytes)
3030 if (canLock)
3131 then WriteSet([DataEntry(lockName, i.caller.bytes), DataEntry(lockUntilName, (now + 600))])
32- else WriteSet([DataEntry(lockName, lockedBy), DataEntry(lockUntilName, lockedUntil)])
32+ else throw("Already locked by another")
3333 }
3434
3535
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func tryGet600SecondsLock (lockName) = {
88 let lockUntilName = (lockName + "/until")
99 let now = match blockInfoByHeight(height) {
1010 case b: BlockInfo =>
1111 b.timestamp
1212 case _ =>
1313 0
1414 }
1515 let lockedBy = match getBinary(this, lockName) {
1616 case b: ByteVector =>
1717 b
1818 case _ =>
1919 i.caller.bytes
2020 }
2121 let lockedUntil = match getInteger(this, lockUntilName) {
2222 case until: Int =>
2323 until
2424 case _ =>
2525 0
2626 }
2727 let canLock = if ((now > lockedUntil))
2828 then true
2929 else (lockedBy == i.caller.bytes)
3030 if (canLock)
3131 then WriteSet([DataEntry(lockName, i.caller.bytes), DataEntry(lockUntilName, (now + 600))])
32- else WriteSet([DataEntry(lockName, lockedBy), DataEntry(lockUntilName, lockedUntil)])
32+ else throw("Already locked by another")
3333 }
3434
3535

github/deemru/w8io/873ac7e 
42.81 ms