tx · 5iZh1LLBC4SZ6Ma6UCtknWF5VTDgLdZcEvsj8vRUSedK 3MuxkMCLM6bh81rSFXwivgbh9sgERs3wjCZ: -0.03400000 Waves 2024.10.03 11:20 [3310424] smart account 3MuxkMCLM6bh81rSFXwivgbh9sgERs3wjCZ > SELF 0.00000000 Waves
{ "type": 13, "id": "5iZh1LLBC4SZ6Ma6UCtknWF5VTDgLdZcEvsj8vRUSedK", "fee": 3400000, "feeAssetId": null, "timestamp": 1727943637293, "version": 2, "chainId": 84, "sender": "3MuxkMCLM6bh81rSFXwivgbh9sgERs3wjCZ", "senderPublicKey": "9RPFMHRAPDJ538heq74Z7nj1E8DVHTDxntkA4vjKvzPC", "proofs": [ "1MNqKcuXxor26CrZE6soAm6ewQpMQCA2xZU3fGCbUWi51uzMtfp4krStsQrasrpYFsvRwhqKE2diFNbsfpiqPVg" ], "script": "base64:AAIFAAAAAAAAACgIAhIDCgEIEgMKAQgSBQoDCAEBEgMKAQgSAwoBCBIDCgEIEgQKAggIAAAAOQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACAAAAB2FkZHJlc3MAAAADa2V5BAAAAAckbWF0Y2gwCQAEHQAAAAIFAAAAB2FkZHJlc3MFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAgAAAAABAAAADHRyeUdldFN0cmluZwAAAAEAAAADa2V5CQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACBQAAAAR0aGlzBQAAAANrZXkBAAAAF3N0YXRpY0tleV9vcmFjbGVBZGRyZXNzAAAAAAIAAAAUc3RhdGljX29yYWNsZUFkZHJlc3MBAAAAEnN0YXRpY0tleV9leHRyYUZlZQAAAAACAAAAD3N0YXRpY19leHRyYUZlZQEAAAAXc3RhdGljS2V5X2ZlZUFnZ3JlZ2F0b3IAAAAAAgAAABRzdGF0aWNfZmVlQWdncmVnYXRvcgEAAAAZc3RhdGljS2V5X2ZlbGluZUluY3ViYXRvcgAAAAACAAAAHXN0YXRpY19mZWxpbmVJbmN1YmF0b3JBZGRyZXNzAQAAAB1zdGF0aWNLZXlfZmVsaW5lSW5jdWJhdGlvbkZlZQAAAAACAAAAGnN0YXRpY19mZWxpbmVJbmN1YmF0aW9uRmVlAQAAABRzdGF0aWNLZXlfZWdnQXNzZXRJZAAAAAACAAAAEXN0YXRpY19lZ2dBc3NldElkAQAAABxzdGF0aWNLZXlfcmVmQ29udHJhY3RBZGRyZXNzAAAAAAIAAAAZc3RhdGljX3JlZkNvbnRyYWN0QWRkcmVzcwEAAAAWc3RhdGljS2V5X2l0ZW1zQWRkcmVzcwAAAAACAAAAE3N0YXRpY19pdGVtc0FkZHJlc3MBAAAAGHN0YXRpY0tleV9jb3Vwb25zQWRkcmVzcwAAAAACAAAAFXN0YXRpY19jb3Vwb25zQWRkcmVzcwEAAAAec3RhdGljS2V5X2NhbmluZVJlYmlydGhBZGRyZXNzAAAAAAIAAAAbc3RhdGljX2ZlbGluZVJlYmlydGhBZGRyZXNzAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAADHRyeUdldFN0cmluZwAAAAEJAQAAABdzdGF0aWNLZXlfb3JhY2xlQWRkcmVzcwAAAAABAAAAEGdldEZlZUFnZ3JlZ2F0b3IAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABdzdGF0aWNLZXlfZmVlQWdncmVnYXRvcgAAAAABAAAADWdldEVnZ0Fzc2V0SWQAAAAACQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAUc3RhdGljS2V5X2VnZ0Fzc2V0SWQAAAAAAQAAABJnZXRDYW5pbmVJbmN1YmF0b3IAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABlzdGF0aWNLZXlfZmVsaW5lSW5jdWJhdG9yAAAAAAEAAAAWZ2V0Q2FuaW5lSW5jdWJhdGlvbkZlZQAAAAAJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAdc3RhdGljS2V5X2ZlbGluZUluY3ViYXRpb25GZWUAAAAAAQAAAA5nZXRCdXJuQWRkcmVzcwAAAAAJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAIAAAASc3RhdGljX2J1cm5BZGRyZXNzAQAAABVnZXRSZWZDb250cmFjdEFkZHJlc3MAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAAJAQAAABxzdGF0aWNLZXlfcmVmQ29udHJhY3RBZGRyZXNzAAAAAAEAAAAPZ2V0SXRlbXNBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAWc3RhdGljS2V5X2l0ZW1zQWRkcmVzcwAAAAABAAAAEWdldENvdXBvbnNBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAYc3RhdGljS2V5X2NvdXBvbnNBZGRyZXNzAAAAAAEAAAAVZ2V0RmVsaVJlYmlydGhBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAec3RhdGljS2V5X2NhbmluZVJlYmlydGhBZGRyZXNzAAAAAAEAAAAWY2hlY2tBZGRpdGlvbmFsUGF5bWVudAAAAAEAAAAHcGF5bWVudAMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAAHcGF5bWVudAAAAAdhc3NldElkCQAAAgAAAAECAAAAGkJEQ0FQOiBQbGVhc2UgYXR0YWNoIHdhdmVzBAAAAAlmZWVBbW91bnQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAASc3RhdGljS2V5X2V4dHJhRmVlAAAAAAMJAQAAAAIhPQAAAAIIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAAJZmVlQW1vdW50CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAB1CRENBUDogUGxlYXNlIGF0dGFjaCBleGFjdGx5IAkAAaQAAAABBQAAAAlmZWVBbW91bnQCAAAAEyBhbW91bnQgb2Ygd2F2ZWxldHMJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAEGdldEZlZUFnZ3JlZ2F0b3IAAAAABQAAAAlmZWVBbW91bnQFAAAABHVuaXQFAAAAA25pbAAAAAAQZGVsYXlGb3JIYXRjaGluZwAAAAAAAAAAAgAAAAAPSGF0Y2hpbmdTdGFydGVkAgAAABBCUkVFRElOR19TVEFSVEVEAAAAABBIYXRjaGluZ0ZpbmlzaGVkAgAAABFCUkVFRElO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aEhlaWdodAAAAA5nZW5lRnJvbVBhcmVudAAAAAtnZW5lUG9zdGlvbgAAAA5zcGVjaWZpcXVlR2VuZQAAABZzcGVjaWZpcXVlR2VuZVBvc2l0aW9uAwMJAQAAAAIhPQAAAAIFAAAADmdlbmVGcm9tUGFyZW50AAAAAAAAAAAACQAAAAAAAAIFAAAAC2dlbmVQb3N0aW9uBQAAAARzdGVwBwMJAAAAAAAAAgUAAAAOZ2VuZUZyb21QYXJlbnQAAAAAAAAAAAEFAAAABGdlbjEDCQAAAAAAAAIFAAAADmdlbmVGcm9tUGFyZW50AAAAAAAAAAACBQAAAARnZW4yCQAAAgAAAAECAAAAIFBhcmVudCBlaXRoZXIgbmVlZHMgdG8gYmUgMSBvciAyAwMJAQAAAAIhPQAAAAIFAAAADnNwZWNpZmlxdWVHZW5lAgAAAAAJAAAAAAAAAgUAAAAWc3BlY2lmaXF1ZUdlbmVQb3NpdGlvbgUAAAAEc3RlcAcFAAAADnNwZWNpZmlxdWVHZW5lBAAAAAlyYW5kb21OdW0JAQAAAA9nZXRSYW5kb21OdW1iZXIAAAAEAAAAAAAAAAACBQAAAAR0eElkBQAAABRoYXRjaGluZ0ZpbmlzaEhlaWdodAUAAAAEc3RlcAQAAAADZ2VuAwkAAAAAAAACBQAAAAlyYW5kb21OdW0AAAAAAAAAAAAFAAAABGdlbjEFAAAABGdlbjIFAAAAA2dlbgEAAAAIZ2VuZXJhdGUAAAAGAAAABHR4SWQAAAAUaGF0Y2hpbmdGaW5pc2hIZWlnaHQAAAAPcGFyZW50Rml4ZWRHZW5lAAAAEXBvc2l0aW9uRml4ZWRHZW5lAAAADnNwZWNpZmlxdWVHZW5lAAAAFnNwZWNpZmlxdWVHZW5lUG9zaXRpb24EAAAAC2NvbG9yUmFuZG9tCQEAAAAPZ2V0UmFuZG9tTnVtYmVyAAAABAAAAAAAAAAABAUAAAAEdHhJZAUAAAAUaGF0Y2hpbmdGaW5pc2hIZWlnaHQAAAAAAAAAAAsEAAAABWNvbG9yAwkAAAAAAAACBQAAAAtjb2xvclJhbmRvbQAAAAAAAAAAAAIAAAABQQMJAAAAAAAAAgUAAAALY29sb3JSYW5kb20AAAAAAAAAAAECAAAAAUIDCQAAAAAAAAIFAAAAC2NvbG9yUmFuZG9tAAAAAAAAAAACAgAAAAFDAgAAAAFEBAAAAAlwYXJlbnQxSWQJAAJZAAAAAQkBAAAADHRyeUdldFN0cmluZwAAAAEJAQAAAAxnZXRQYXJlbnRLZXkAAAACBQAAAAR0eElkAAAAAAAAAAABBAAAAAlwYXJlbnQySWQJAAJZAAAAAQkBAAAADHRyeUdldFN0cmluZwAAAAEJAQAAAAxnZXRQYXJlbnRLZXkAAAACBQAAAAR0eElkAAAAAAAAAAACBAAAAApwYXJlbnQxR2VuCQAEtQAAAAIICQEAAAAFdmFsdWUAAAABCQAD7AAAAAEFAAAACXBhcmVudDFJZAAAAARuYW1lAgAAAAAEAAAACnBhcmVudDJHZW4JAAS1AAAAAggJAQAAAAV2YWx1ZQAAAAEJAAPsAAAAAQUAAAAJcGFyZW50MklkAAAABG5hbWUCAAAAAAQAAAADZ2VuCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAFRkVMSS0JAQAAAAxnZXRSYW5kb21HZW4AAAAJCQABkQAAAAIFAAAACnBhcmVudDFHZW4AAAAAAAAAAAUJAAGRAAAAAgUAAAAKcGFyZW50MkdlbgAAAAAAAAAABQAAAAAAAAAAAAUAAAAEdHhJZAUAAAAUaGF0Y2hpbmdGaW5pc2hIZWlnaHQFAAAAD3BhcmVudEZpeGVkR2VuZQUAAAARcG9zaXRpb25GaXhlZEdlbmUFAAAADnNwZWNpZmlxdWVHZW5lBQAAABZzcGVjaWZpcXVlR2VuZVBvc2l0aW9uCQEAAAAMZ2V0UmFuZG9tR2VuAAAACQkAAZEAAAACBQAAAApwYXJlbnQxR2VuAAAAAAAAAAAGCQABkQAAAAIFAAAACnBhcmVudDJHZW4AAAAAAAAAAAYAAAAAAAAAAAEFAAAABHR4SWQFAAAAFGhhdGNoaW5nRmluaXNoSGVpZ2h0BQAAAA9wYXJlbnRGaXhlZEdlbmUFAAAAEXBvc2l0aW9uRml4ZWRHZW5lBQAAAA5zcGVjaWZpcXVlR2VuZQUAAAAWc3BlY2lmaXF1ZUdlbmVQb3NpdGlvbgkBAAAADGdldFJhbmRvbUdlbgAAAAkJAAGRAAAAAgUAAAAKcGFyZW50MUdlbgAAAAAAAAAABwkAAZEAAAACBQAAAApwYXJlbnQyR2VuAAAAAAAAAAAHAAAAAAAAAAACBQAAAAR0eElkBQAAABRoYXRjaGluZ0ZpbmlzaEhlaWdodAUAAAAPcGFyZW50Rml4ZWRHZW5lBQAAABFwb3NpdGlvbkZpeGVkR2VuZQUAAAAOc3BlY2lmaXF1ZUdlbmUFAAAAFnNwZWNpZmlxdWVHZW5lUG9zaXRpb24JAQAAAAxnZXRSYW5kb21HZW4AAAAJCQABkQAAAAIFAAAACnBhcmVudDFHZW4AAAAAAAAAAAgJAAGRAAAAAgUAAAAKcGFyZW50MkdlbgAAAAAAAAAACAAAAAAAAAAAAwUAAAAEdHhJZAUAAAAUaGF0Y2hpbmdGaW5pc2hIZWlnaHQFAAAAD3BhcmVudEZpeGVkR2VuZQUAAAARcG9zaXRpb25GaXhlZEdlbmUFAAAADnNwZWNpZmlxdWVHZW5lBQAAABZzcGVjaWZpcXVlR2VuZVBvc2l0aW9uCQEAAAAMZ2V0UmFuZG9tR2VuAAAACQkAAZEAAAACBQAAAApwYXJlbnQxR2VuAAAAAAAAAAAJCQABkQAAAAIFAAAACnBhcmVudDJHZW4AAAAAAAAAAAkAAAAAAAAAAAQFAAAABHR4SWQFAAAAFGhhdGNoaW5nRmluaXNoSGVpZ2h0BQAAAA9wYXJlbnRGaXhlZEdlbmUFAAAAEXBvc2l0aW9uRml4ZWRHZW5lBQAAAA5zcGVjaWZpcXVlR2VuZQUAAAAWc3BlY2lmaXF1ZUdlbmVQb3NpdGlvbgkBAAAADGdldFJhbmRvbUdlbgAAAAkJAAGRAAAAAgUAAAAKcGFyZW50MUdlbgAAAAAAAAAACgkAAZEAAAACBQAAAApwYXJlbnQyR2VuAAAAAAAAAAAKAAAAAAAAAAAFBQAAAAR0eElkBQAAABRoYXRjaGluZ0ZpbmlzaEhlaWdodAUAAAAPcGFyZW50Rml4ZWRHZW5lBQAAABFwb3NpdGlvbkZpeGVkR2VuZQUAAAAOc3BlY2lmaXF1ZUdlbmUFAAAAFnNwZWNpZmlxdWVHZW5lUG9zaXRpb24JAQAAAAxnZXRSYW5kb21HZW4AAAAJCQABkQAAAAIFAAAACnBhcmVudDFHZW4AAAAAAAAAAAsJAAGRAAAAAgUAAAAKcGFyZW50MkdlbgAAAAAAAAAACwAAAAAAAAAABgUAAAAEdHhJZAUAAAAUaGF0Y2hpbmdGaW5pc2hIZWlnaHQFAAAAD3BhcmVudEZpeGVkR2VuZQUAAAARcG9zaXRpb25GaXhlZEdlbmUFAAAADnNwZWNpZmlxdWVHZW5lBQAAABZzcGVjaWZpcXVlR2VuZVBvc2l0aW9uCQEAAAAMZ2V0UmFuZG9tR2VuAAAACQkAAZEAAAACBQAAAApwYXJlbnQxR2VuAAAAAAAAAAAMCQABkQAAAAIFAAAACnBhcmVudDJHZW4AAAAAAAAAAAwAAAAAAAAAAAcFAAAABHR4SWQFAAAAFGhhdGNoaW5nRmluaXNoSGVpZ2h0BQAAAA9wYXJlbnRGaXhlZEdlbmUFAAAAEXBvc2l0aW9uRml4ZWRHZW5lBQAAAA5zcGVjaWZpcXVlR2VuZQUAAAAWc3BlY2lmaXF1ZUdlbmVQb3NpdGlvbgIAAAABLQkBAAAAE2RldGVybWluZUdlbmVyYXRpb24AAAACCQABkQAAAAIFAAAACnBhcmVudDFHZW4AAAAAAAAAAA4JAAGRAAAAAgUAAAAKcGFyZW50MkdlbgAAAAAAAAAADgUAAAAFY29sb3IFAAAAA2dlbgEAAAAVY2hlY2tBc3NldEluSW5jdWJhdG9yAAAAAQAAAAdhc3NldElkBAAAAAZyZXN1bHQEAAAAByRtYXRjaDAJAAQdAAAAAgkBAAAAEmdldENhbmluZUluY3ViYXRvcgAAAAAFAAAAB2Fzc2V0SWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYgUAAAAHJG1hdGNoMAYHBAAAAAdyZXN1bHQyBAAAAAckbWF0Y2gwCQAEHQAAAAIFAAAABHRoaXMFAAAAB2Fzc2V0SWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYwUAAAAHJG1hdGNoMAYHAwUAAAAGcmVzdWx0BgUAAAAHcmVzdWx0MgEAAAAMY2FuQmVCcmVlZGVkAAAAAgAAAAhhc3NldDFJZAAAAAhhc3NldDJJZAQAAAAJYXNzZXQxR2VuCQAEtQAAAAIICQEAAAAFdmFsdWUAAAABCQAD7AAAAAEFAAAACGFzc2V0MUlkAAAABG5hbWUC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LQUAAAAKZ2VuZXJhdGlvbgEAAAAWZmluaXNoSGF0Y2hpbmdJbnRlcm5hbAAAAAYAAAAHdHhJZFN0cgAAAAFpAAAAD3BhcmVudEZpeGVkR2VuZQAAABFwb3NpdGlvbkZpeGVkR2VuZQAAAA5zcGVjaWZpcXVlR2VuZQAAABZzcGVjaWZpcXVlR2VuZVBvc2l0aW9uBAAAAAR0eElkCQACWQAAAAEFAAAAB3R4SWRTdHIEAAAAEHByb2Nlc3NTdGF0dXNLZXkJAQAAABNnZXRQcm9jZXNzU3RhdHVzS2V5AAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAABHR4SWQEAAAAD2ZpbmlzaEhlaWdodEtleQkBAAAAGWdldFByb2Nlc3NGaW5pc2hIZWlnaHRLZXkAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAAEdHhJZAQAAAAFSWRLZXkJAQAAAAhnZXRJZEtleQAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAAAR0eElkBAAAAA9wcm9jZXNzVHhTdGF0dXMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAAEHByb2Nlc3NTdGF0dXNLZXkEAAAAE3Byb2Nlc3NGaW5pc2hIZWlnaHQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMFAAAAD2ZpbmlzaEhlaWdodEtleQMJAAAAAAAAAgUAAAAPcHJvY2Vzc1R4U3RhdHVzBQAAABBIYXRjaGluZ0ZpbmlzaGVkBAAAAAJJZAkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkBAAAACGdldElkS2V5AAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAABHR4SWQJAAACAAAAAQkAASwAAAACAgAAAEJUaGUgZmVsaW5lIHdhcyBicmVlZGVkIGFuZCBjbGFpbWVkIGFscmVhZHksIGhlcmUgaXMgdGhlIGZvbG93aW5nOiAFAAAAAklkAwkAAGYAAAACBQAAABNwcm9jZXNzRmluaXNoSGVpZ2h0BQAAAAZoZWlnaHQJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAB1CcmVl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", "height": 3310424, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: EqctFnnBwFV1ETXxpXyAs7t6YxXqVHU8WnXsM2tteex9 Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | func a (b,c) = { | |
5 | + | let d = getString(b, c) | |
6 | + | if ($isInstanceOf(d, "String")) | |
7 | + | then { | |
8 | + | let e = d | |
9 | + | e | |
10 | + | } | |
11 | + | else "" | |
12 | + | } | |
13 | + | ||
14 | + | ||
15 | + | func f (c) = a(this, c) | |
16 | + | ||
17 | + | ||
18 | + | func g () = "static_oracleAddress" | |
19 | + | ||
20 | + | ||
21 | + | func h () = "static_extraFee" | |
22 | + | ||
23 | + | ||
24 | + | func i () = "static_feeAggregator" | |
25 | + | ||
26 | + | ||
27 | + | func j () = "static_felineIncubatorAddress" | |
28 | + | ||
29 | + | ||
30 | + | func k () = "static_felineIncubationFee" | |
31 | + | ||
32 | + | ||
33 | + | func l () = "static_eggAssetId" | |
34 | + | ||
35 | + | ||
36 | + | func m () = "static_refContractAddress" | |
37 | + | ||
38 | + | ||
39 | + | func n () = "static_itemsAddress" | |
40 | + | ||
41 | + | ||
42 | + | func o () = "static_couponsAddress" | |
43 | + | ||
44 | + | ||
45 | + | func p () = "static_felineRebirthAddress" | |
46 | + | ||
47 | + | ||
48 | + | func q () = Address(fromBase58String(f(g()))) | |
49 | + | ||
50 | + | ||
51 | + | func r () = Address(fromBase58String(a(q(), i()))) | |
52 | + | ||
53 | + | ||
54 | + | func s () = fromBase58String(a(q(), l())) | |
55 | + | ||
56 | + | ||
57 | + | func t () = Address(fromBase58String(a(q(), j()))) | |
58 | + | ||
59 | + | ||
60 | + | func u () = getIntegerValue(q(), k()) | |
61 | + | ||
62 | + | ||
63 | + | func v () = Address(fromBase58String(a(q(), "static_burnAddress"))) | |
64 | + | ||
65 | + | ||
66 | + | func w () = Address(fromBase58String(a(q(), m()))) | |
67 | + | ||
68 | + | ||
69 | + | func x () = Address(fromBase58String(a(q(), n()))) | |
70 | + | ||
71 | + | ||
72 | + | func y () = Address(fromBase58String(a(q(), o()))) | |
73 | + | ||
74 | + | ||
75 | + | func z () = Address(fromBase58String(a(q(), p()))) | |
76 | + | ||
77 | + | ||
78 | + | func A (B) = if (isDefined(B.assetId)) | |
79 | + | then throw("BDCAP: Please attach waves") | |
80 | + | else { | |
81 | + | let C = getIntegerValue(q(), h()) | |
82 | + | if ((B.amount != C)) | |
83 | + | then throw((("BDCAP: Please attach exactly " + toString(C)) + " amount of wavelets")) | |
84 | + | else [ScriptTransfer(r(), C, unit)] | |
85 | + | } | |
86 | + | ||
87 | + | ||
88 | + | let D = 2 | |
89 | + | ||
90 | + | let E = "BREEDING_STARTED" | |
91 | + | ||
92 | + | let F = "BREEDING_FINISHED" | |
93 | + | ||
94 | + | let G = 7 | |
95 | + | ||
96 | + | let H = ["G", "H", "I", "K", "L", "M", "N", "O"] | |
97 | + | ||
98 | + | func I (J) = { | |
99 | + | let d = J | |
100 | + | if ($isInstanceOf(d, "Boolean")) | |
101 | + | then { | |
102 | + | let K = d | |
103 | + | K | |
104 | + | } | |
105 | + | else throw("TI: wrong type, expected: Boolean") | |
106 | + | } | |
107 | + | ||
108 | + | ||
109 | + | func L (b,M) = (((b + "_") + toBase58String(M)) + "_status") | |
110 | + | ||
111 | + | ||
112 | + | func N (c) = { | |
113 | + | let d = getBoolean(this, c) | |
114 | + | if ($isInstanceOf(d, "Boolean")) | |
115 | + | then { | |
116 | + | let O = d | |
117 | + | O | |
118 | + | } | |
119 | + | else false | |
120 | + | } | |
121 | + | ||
122 | + | ||
123 | + | func P () = N("TESTENV") | |
124 | + | ||
125 | + | ||
126 | + | func Q (b,M) = (((b + "_") + toBase58String(M)) + "_fh") | |
127 | + | ||
128 | + | ||
129 | + | func R (M,S) = ((("inittx_" + toBase58String(M)) + "_parent") + toString(S)) | |
130 | + | ||
131 | + | ||
132 | + | func T (b,M) = (((b + "_") + toBase58String(M)) + "_di") | |
133 | + | ||
134 | + | ||
135 | + | func U (V) = (("stats_" + V) + "_amount") | |
136 | + | ||
137 | + | ||
138 | + | func W (c) = { | |
139 | + | let X = { | |
140 | + | let d = getInteger(this, c) | |
141 | + | if ($isInstanceOf(d, "Int")) | |
142 | + | then { | |
143 | + | let O = d | |
144 | + | O | |
145 | + | } | |
146 | + | else 0 | |
147 | + | } | |
148 | + | X | |
149 | + | } | |
150 | + | ||
151 | + | ||
152 | + | func Y (Z,aa) = { | |
153 | + | let ab = max([value(indexOf(H, Z)), value(indexOf(H, aa))]) | |
154 | + | H[(ab + 1)] | |
155 | + | } | |
156 | + | ||
157 | + | ||
158 | + | func ac (ad,M,ae,af) = { | |
159 | + | let ag = value(blockInfoByHeight((ae - 1))) | |
160 | + | let ah = sha256_16Kb((M + value(ag.vrf))) | |
161 | + | (toInt(ah, af) % ad) | |
162 | + | } | |
163 | + | ||
164 | + | ||
165 | + | func ai (aj,ak,al,M,ae,am,an,ao,ap) = if (if ((am != 0)) | |
166 | + | then (an == al) | |
167 | + | else false) | |
168 | + | then if ((am == 1)) | |
169 | + | then aj | |
170 | + | else if ((am == 2)) | |
171 | + | then ak | |
172 | + | else throw("Parent either needs to be 1 or 2") | |
173 | + | else if (if ((ao != "")) | |
174 | + | then (ap == al) | |
175 | + | else false) | |
176 | + | then ao | |
177 | + | else { | |
178 | + | let aq = ac(2, M, ae, al) | |
179 | + | let ar = if ((aq == 0)) | |
180 | + | then aj | |
181 | + | else ak | |
182 | + | ar | |
183 | + | } | |
184 | + | ||
185 | + | ||
186 | + | func as (M,ae,at,au,ao,ap) = { | |
187 | + | let av = ac(4, M, ae, 11) | |
188 | + | let aw = if ((av == 0)) | |
189 | + | then "A" | |
190 | + | else if ((av == 1)) | |
191 | + | then "B" | |
192 | + | else if ((av == 2)) | |
193 | + | then "C" | |
194 | + | else "D" | |
195 | + | let ax = fromBase58String(f(R(M, 1))) | |
196 | + | let ay = fromBase58String(f(R(M, 2))) | |
197 | + | let az = split(value(assetInfo(ax)).name, "") | |
198 | + | let aA = split(value(assetInfo(ay)).name, "") | |
199 | + | let ar = ((((((((((("FELI-" + ai(az[5], aA[5], 0, M, ae, at, au, ao, ap)) + ai(az[6], aA[6], 1, M, ae, at, au, ao, ap)) + ai(az[7], aA[7], 2, M, ae, at, au, ao, ap)) + ai(az[8], aA[8], 3, M, ae, at, au, ao, ap)) + ai(az[9], aA[9], 4, M, ae, at, au, ao, ap)) + ai(az[10], aA[10], 5, M, ae, at, au, ao, ap)) + ai(az[11], aA[11], 6, M, ae, at, au, ao, ap)) + ai(az[12], aA[12], 7, M, ae, at, au, ao, ap)) + "-") + Y(az[14], aA[14])) + aw) | |
200 | + | ar | |
201 | + | } | |
202 | + | ||
203 | + | ||
204 | + | func aB (aC) = { | |
205 | + | let aD = { | |
206 | + | let d = getString(t(), aC) | |
207 | + | if ($isInstanceOf(d, "String")) | |
208 | + | then { | |
209 | + | let O = d | |
210 | + | true | |
211 | + | } | |
212 | + | else false | |
213 | + | } | |
214 | + | let aE = { | |
215 | + | let d = getString(this, aC) | |
216 | + | if ($isInstanceOf(d, "String")) | |
217 | + | then { | |
218 | + | let aF = d | |
219 | + | true | |
220 | + | } | |
221 | + | else false | |
222 | + | } | |
223 | + | if (aD) | |
224 | + | then true | |
225 | + | else aE | |
226 | + | } | |
227 | + | ||
228 | + | ||
229 | + | func aG (aH,aI) = { | |
230 | + | let aJ = split(value(assetInfo(aH)).name, "") | |
231 | + | let aK = split(value(assetInfo(aI)).name, "") | |
232 | + | if ((value(indexOf(H, aJ[14])) >= G)) | |
233 | + | then (("you can only breed felines with generation " + H[G]) + " and lower") | |
234 | + | else if ((value(indexOf(H, aK[14])) >= G)) | |
235 | + | then (("you can only breed felines with generation " + H[G]) + " and lower") | |
236 | + | else "true" | |
237 | + | } | |
238 | + | ||
239 | + | ||
240 | + | func aL (J) = { | |
241 | + | let d = J | |
242 | + | if ($isInstanceOf(d, "String")) | |
243 | + | then { | |
244 | + | let aM = d | |
245 | + | aM | |
246 | + | } | |
247 | + | else throw("wrong type, expected: String") | |
248 | + | } | |
249 | + | ||
250 | + | ||
251 | + | func aN (aO,aP) = if ((aP == "A")) | |
252 | + | then (aO + 1) | |
253 | + | else (aO + 0) | |
254 | + | ||
255 | + | ||
256 | + | func aQ (aO,aP) = if ((aP == "B")) | |
257 | + | then (aO + 1) | |
258 | + | else (aO + 0) | |
259 | + | ||
260 | + | ||
261 | + | func aR (aO,aP) = if ((aP == "C")) | |
262 | + | then (aO + 1) | |
263 | + | else (aO + 0) | |
264 | + | ||
265 | + | ||
266 | + | func aS (aO,aP) = if ((aP == "D")) | |
267 | + | then (aO + 1) | |
268 | + | else (aO + 0) | |
269 | + | ||
270 | + | ||
271 | + | func aT (aO,aP) = if ((aP == "E")) | |
272 | + | then (aO + 1) | |
273 | + | else (aO + 0) | |
274 | + | ||
275 | + | ||
276 | + | func aU (aO,aP) = if ((aP == "F")) | |
277 | + | then (aO + 1) | |
278 | + | else (aO + 0) | |
279 | + | ||
280 | + | ||
281 | + | func aV (aO,aP) = if ((aP == "G")) | |
282 | + | then (aO + 1) | |
283 | + | else (aO + 0) | |
284 | + | ||
285 | + | ||
286 | + | func aW (aO,aP) = if ((aP == "H")) | |
287 | + | then (aO + 1) | |
288 | + | else (aO + 0) | |
289 | + | ||
290 | + | ||
291 | + | func aX (aY) = if (contains(aY, "0")) | |
292 | + | then "" | |
293 | + | else aY | |
294 | + | ||
295 | + | ||
296 | + | func aZ (ba) = { | |
297 | + | let bb = split(dropRight(drop(ba, 5), 3), "") | |
298 | + | let bc = split(ba, "")[14] | |
299 | + | (((((((((aX((toString({ | |
300 | + | let bd = bb | |
301 | + | let be = size(bd) | |
302 | + | let bf = 0 | |
303 | + | func bg (bh,bi) = if ((bi >= be)) | |
304 | + | then bh | |
305 | + | else aN(bh, bd[bi]) | |
306 | + | ||
307 | + | func bj (bh,bi) = if ((bi >= be)) | |
308 | + | then bh | |
309 | + | else throw("List size exceeds 8") | |
310 | + | ||
311 | + | bj(bg(bg(bg(bg(bg(bg(bg(bg(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
312 | + | }) + "A")) + aX((toString({ | |
313 | + | let bd = bb | |
314 | + | let be = size(bd) | |
315 | + | let bf = 0 | |
316 | + | func bk (bh,bi) = if ((bi >= be)) | |
317 | + | then bh | |
318 | + | else aQ(bh, bd[bi]) | |
319 | + | ||
320 | + | func bl (bh,bi) = if ((bi >= be)) | |
321 | + | then bh | |
322 | + | else throw("List size exceeds 8") | |
323 | + | ||
324 | + | bl(bk(bk(bk(bk(bk(bk(bk(bk(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
325 | + | }) + "B"))) + aX((toString({ | |
326 | + | let bd = bb | |
327 | + | let be = size(bd) | |
328 | + | let bf = 0 | |
329 | + | func bm (bh,bi) = if ((bi >= be)) | |
330 | + | then bh | |
331 | + | else aR(bh, bd[bi]) | |
332 | + | ||
333 | + | func bn (bh,bi) = if ((bi >= be)) | |
334 | + | then bh | |
335 | + | else throw("List size exceeds 8") | |
336 | + | ||
337 | + | bn(bm(bm(bm(bm(bm(bm(bm(bm(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
338 | + | }) + "C"))) + aX((toString({ | |
339 | + | let bd = bb | |
340 | + | let be = size(bd) | |
341 | + | let bf = 0 | |
342 | + | func bo (bh,bi) = if ((bi >= be)) | |
343 | + | then bh | |
344 | + | else aS(bh, bd[bi]) | |
345 | + | ||
346 | + | func bp (bh,bi) = if ((bi >= be)) | |
347 | + | then bh | |
348 | + | else throw("List size exceeds 8") | |
349 | + | ||
350 | + | bp(bo(bo(bo(bo(bo(bo(bo(bo(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
351 | + | }) + "D"))) + aX((toString({ | |
352 | + | let bd = bb | |
353 | + | let be = size(bd) | |
354 | + | let bf = 0 | |
355 | + | func bq (bh,bi) = if ((bi >= be)) | |
356 | + | then bh | |
357 | + | else aT(bh, bd[bi]) | |
358 | + | ||
359 | + | func br (bh,bi) = if ((bi >= be)) | |
360 | + | then bh | |
361 | + | else throw("List size exceeds 8") | |
362 | + | ||
363 | + | br(bq(bq(bq(bq(bq(bq(bq(bq(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
364 | + | }) + "E"))) + aX((toString({ | |
365 | + | let bd = bb | |
366 | + | let be = size(bd) | |
367 | + | let bf = 0 | |
368 | + | func bs (bh,bi) = if ((bi >= be)) | |
369 | + | then bh | |
370 | + | else aU(bh, bd[bi]) | |
371 | + | ||
372 | + | func bt (bh,bi) = if ((bi >= be)) | |
373 | + | then bh | |
374 | + | else throw("List size exceeds 8") | |
375 | + | ||
376 | + | bt(bs(bs(bs(bs(bs(bs(bs(bs(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
377 | + | }) + "F"))) + aX((toString({ | |
378 | + | let bd = bb | |
379 | + | let be = size(bd) | |
380 | + | let bf = 0 | |
381 | + | func bu (bh,bi) = if ((bi >= be)) | |
382 | + | then bh | |
383 | + | else aV(bh, bd[bi]) | |
384 | + | ||
385 | + | func bv (bh,bi) = if ((bi >= be)) | |
386 | + | then bh | |
387 | + | else throw("List size exceeds 8") | |
388 | + | ||
389 | + | bv(bu(bu(bu(bu(bu(bu(bu(bu(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
390 | + | }) + "G"))) + aX((toString({ | |
391 | + | let bd = bb | |
392 | + | let be = size(bd) | |
393 | + | let bf = 0 | |
394 | + | func bw (bh,bi) = if ((bi >= be)) | |
395 | + | then bh | |
396 | + | else aW(bh, bd[bi]) | |
397 | + | ||
398 | + | func bx (bh,bi) = if ((bi >= be)) | |
399 | + | then bh | |
400 | + | else throw("List size exceeds 8") | |
401 | + | ||
402 | + | bx(bw(bw(bw(bw(bw(bw(bw(bw(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
403 | + | }) + "H"))) + "-") + bc) | |
404 | + | } | |
405 | + | ||
406 | + | ||
407 | + | func by (bz,bA,at,au,ao,ap) = { | |
408 | + | let M = fromBase58String(bz) | |
409 | + | let bB = L(toString(bA.caller), M) | |
410 | + | let bC = Q(toString(bA.caller), M) | |
411 | + | let bD = T(toString(bA.caller), M) | |
412 | + | let bE = getStringValue(this, bB) | |
413 | + | let bF = getIntegerValue(this, bC) | |
414 | + | if ((bE == F)) | |
415 | + | then { | |
416 | + | let bG = getStringValue(this, T(toString(bA.caller), M)) | |
417 | + | throw(("The feline was breeded and claimed already, here is the folowing: " + bG)) | |
418 | + | } | |
419 | + | else if ((bF > height)) | |
420 | + | then throw((((("Breeding is not finished yet " + toString((bF - height))) + " blocks remaining, it will take around ") + toString((bF - height))) + " minutes")) | |
421 | + | else { | |
422 | + | let bH = as(M, bF, at, au, ao, ap) | |
423 | + | let bI = aZ(bH) | |
424 | + | let bJ = (("{\"genotype\": \"" + bH) + "\", \"crossbreeding\": true}") | |
425 | + | let bK = Issue(bH, bJ, 1, 0, false, unit, bF) | |
426 | + | let aC = calculateAssetId(bK) | |
427 | + | let aY = (W(U(bH)) + 1) | |
428 | + | let bL = W((("stats_" + bI) + "_quantity")) | |
429 | + | let ax = f(R(M, 1)) | |
430 | + | let ay = f(R(M, 2)) | |
431 | + | [StringEntry(bB, F), StringEntry(bD, toBase58String(aC)), StringEntry(toBase58String(aC), bD), IntegerEntry(U(bH), aY), IntegerEntry((("stats_" + bI) + "_quantity"), (bL + 1)), IntegerEntry((("asset_" + ax) + "_children"), 1), IntegerEntry((("asset_" + ay) + "_children"), 1), bK, ScriptTransfer(bA.caller, 1, aC), ScriptTransfer(bA.caller, 1, fromBase58String(ax)), ScriptTransfer(bA.caller, 1, fromBase58String(ay))] | |
432 | + | } | |
433 | + | } | |
434 | + | ||
435 | + | ||
436 | + | func bM (M,bN) = { | |
437 | + | let bO = ["A", "B", "C", "D"] | |
438 | + | let bP = ac(size(bO), M, bN, 2) | |
439 | + | bO[bP] | |
440 | + | } | |
441 | + | ||
442 | + | ||
443 | + | func bQ (J) = { | |
444 | + | let d = J | |
445 | + | if ($isInstanceOf(d, "Int")) | |
446 | + | then { | |
447 | + | let bR = d | |
448 | + | bR | |
449 | + | } | |
450 | + | else throw("wrong type, expected: Int") | |
451 | + | } | |
452 | + | ||
453 | + | ||
454 | + | @Callable(bA) | |
455 | + | func getGenFromName (ba) = { | |
456 | + | let bb = split(dropRight(drop(ba, 5), 3), "") | |
457 | + | let bc = split(ba, "")[14] | |
458 | + | let ar = (((((((((aX((toString({ | |
459 | + | let bd = bb | |
460 | + | let be = size(bd) | |
461 | + | let bf = 0 | |
462 | + | func bg (bh,bi) = if ((bi >= be)) | |
463 | + | then bh | |
464 | + | else aN(bh, bd[bi]) | |
465 | + | ||
466 | + | func bj (bh,bi) = if ((bi >= be)) | |
467 | + | then bh | |
468 | + | else throw("List size exceeds 8") | |
469 | + | ||
470 | + | bj(bg(bg(bg(bg(bg(bg(bg(bg(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
471 | + | }) + "A")) + aX((toString({ | |
472 | + | let bd = bb | |
473 | + | let be = size(bd) | |
474 | + | let bf = 0 | |
475 | + | func bk (bh,bi) = if ((bi >= be)) | |
476 | + | then bh | |
477 | + | else aQ(bh, bd[bi]) | |
478 | + | ||
479 | + | func bl (bh,bi) = if ((bi >= be)) | |
480 | + | then bh | |
481 | + | else throw("List size exceeds 8") | |
482 | + | ||
483 | + | bl(bk(bk(bk(bk(bk(bk(bk(bk(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
484 | + | }) + "B"))) + aX((toString({ | |
485 | + | let bd = bb | |
486 | + | let be = size(bd) | |
487 | + | let bf = 0 | |
488 | + | func bm (bh,bi) = if ((bi >= be)) | |
489 | + | then bh | |
490 | + | else aR(bh, bd[bi]) | |
491 | + | ||
492 | + | func bn (bh,bi) = if ((bi >= be)) | |
493 | + | then bh | |
494 | + | else throw("List size exceeds 8") | |
495 | + | ||
496 | + | bn(bm(bm(bm(bm(bm(bm(bm(bm(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
497 | + | }) + "C"))) + aX((toString({ | |
498 | + | let bd = bb | |
499 | + | let be = size(bd) | |
500 | + | let bf = 0 | |
501 | + | func bo (bh,bi) = if ((bi >= be)) | |
502 | + | then bh | |
503 | + | else aS(bh, bd[bi]) | |
504 | + | ||
505 | + | func bp (bh,bi) = if ((bi >= be)) | |
506 | + | then bh | |
507 | + | else throw("List size exceeds 8") | |
508 | + | ||
509 | + | bp(bo(bo(bo(bo(bo(bo(bo(bo(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
510 | + | }) + "D"))) + aX((toString({ | |
511 | + | let bd = bb | |
512 | + | let be = size(bd) | |
513 | + | let bf = 0 | |
514 | + | func bq (bh,bi) = if ((bi >= be)) | |
515 | + | then bh | |
516 | + | else aT(bh, bd[bi]) | |
517 | + | ||
518 | + | func br (bh,bi) = if ((bi >= be)) | |
519 | + | then bh | |
520 | + | else throw("List size exceeds 8") | |
521 | + | ||
522 | + | br(bq(bq(bq(bq(bq(bq(bq(bq(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
523 | + | }) + "E"))) + aX((toString({ | |
524 | + | let bd = bb | |
525 | + | let be = size(bd) | |
526 | + | let bf = 0 | |
527 | + | func bs (bh,bi) = if ((bi >= be)) | |
528 | + | then bh | |
529 | + | else aU(bh, bd[bi]) | |
530 | + | ||
531 | + | func bt (bh,bi) = if ((bi >= be)) | |
532 | + | then bh | |
533 | + | else throw("List size exceeds 8") | |
534 | + | ||
535 | + | bt(bs(bs(bs(bs(bs(bs(bs(bs(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
536 | + | }) + "F"))) + aX((toString({ | |
537 | + | let bd = bb | |
538 | + | let be = size(bd) | |
539 | + | let bf = 0 | |
540 | + | func bu (bh,bi) = if ((bi >= be)) | |
541 | + | then bh | |
542 | + | else aV(bh, bd[bi]) | |
543 | + | ||
544 | + | func bv (bh,bi) = if ((bi >= be)) | |
545 | + | then bh | |
546 | + | else throw("List size exceeds 8") | |
547 | + | ||
548 | + | bv(bu(bu(bu(bu(bu(bu(bu(bu(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
549 | + | }) + "G"))) + aX((toString({ | |
550 | + | let bd = bb | |
551 | + | let be = size(bd) | |
552 | + | let bf = 0 | |
553 | + | func bw (bh,bi) = if ((bi >= be)) | |
554 | + | then bh | |
555 | + | else aW(bh, bd[bi]) | |
556 | + | ||
557 | + | func bx (bh,bi) = if ((bi >= be)) | |
558 | + | then bh | |
559 | + | else throw("List size exceeds 8") | |
560 | + | ||
561 | + | bx(bw(bw(bw(bw(bw(bw(bw(bw(bf, 0), 1), 2), 3), 4), 5), 6), 7), 8) | |
562 | + | }) + "H"))) + "-") + bc) | |
563 | + | $Tuple2(nil, ar) | |
564 | + | } | |
565 | + | ||
566 | + | ||
567 | + | ||
568 | + | @Callable(bA) | |
569 | + | func startBreeding (bS) = if (if ((size(bA.payments) != 4)) | |
570 | + | then (size(bA.payments) != 3) | |
571 | + | else false) | |
572 | + | then throw("Wrong amount of payments!") | |
573 | + | else { | |
574 | + | let bT = A(bA.payments[0]) | |
575 | + | if ((bT == bT)) | |
576 | + | then { | |
577 | + | let bU = value(bA.payments[1]) | |
578 | + | let bV = value(bA.payments[2]) | |
579 | + | let bW = bQ(invoke(y(), "useCoupons", [u()], nil)) | |
580 | + | if ((bW == bW)) | |
581 | + | then { | |
582 | + | let bX = (u() - bW) | |
583 | + | if (if ((bX == 0)) | |
584 | + | then (size(bA.payments) == 4) | |
585 | + | else false) | |
586 | + | then throw("You need to attach 3 payments") | |
587 | + | else { | |
588 | + | let B = if ((bX != 0)) | |
589 | + | then { | |
590 | + | let bY = value(bA.payments[3]) | |
591 | + | if ((bY.assetId != s())) | |
592 | + | then throw(("TB: You can attach only EGG tokens with the following asset id: " + toBase58String(s()))) | |
593 | + | else if ((bY.amount != bX)) | |
594 | + | then throw(((("TB: To breed a Feline you following amount of EGGlets: " + toString(bX)) + " ") + toString(bA.caller))) | |
595 | + | else { | |
596 | + | let bZ = fraction(bX, 5, 100) | |
597 | + | let ca = I(invoke(w(), "refPayment", [bS], [AttachedPayment(s(), bZ)])) | |
598 | + | if ((ca == ca)) | |
599 | + | then { | |
600 | + | let cb = if (ca) | |
601 | + | then (bX - bZ) | |
602 | + | else bX | |
603 | + | let cc = invoke(v(), "burnAttachedPayments", nil, [AttachedPayment(s(), cb)]) | |
604 | + | if ((cc == cc)) | |
605 | + | then bX | |
606 | + | else throw("Strict value is not equal to itself.") | |
607 | + | } | |
608 | + | else throw("Strict value is not equal to itself.") | |
609 | + | } | |
610 | + | } | |
611 | + | else 0 | |
612 | + | if ((B == B)) | |
613 | + | then { | |
614 | + | let cd = toBase58String(value(bU.assetId)) | |
615 | + | let ce = toBase58String(value(bV.assetId)) | |
616 | + | if (if ((bU.amount != 1)) | |
617 | + | then true | |
618 | + | else (bV.amount != 1)) | |
619 | + | then throw("NFT is not attached") | |
620 | + | else if (!(if (aB(cd)) | |
621 | + | then aB(ce) | |
622 | + | else false)) | |
623 | + | then throw("You need to attach 2 valid NFT-felines.") | |
624 | + | else if (if ((W((("asset_" + cd) + "_children")) > 0)) | |
625 | + | then true | |
626 | + | else (W((("asset_" + ce) + "_children")) > 0)) | |
627 | + | then throw("One feline can be used for breeding only once in its lifetime.") | |
628 | + | else { | |
629 | + | let cf = aG(fromBase58String(cd), fromBase58String(ce)) | |
630 | + | if ((cf != "true")) | |
631 | + | then throw(("These felines cannot be breeded: " + cf)) | |
632 | + | else ([StringEntry(R(bA.transactionId, 1), cd), StringEntry(R(bA.transactionId, 2), ce), StringEntry(L(toString(bA.caller), bA.transactionId), E), IntegerEntry(Q(toString(bA.caller), bA.transactionId), (height + D))] ++ bT) | |
633 | + | } | |
634 | + | } | |
635 | + | else throw("Strict value is not equal to itself.") | |
636 | + | } | |
637 | + | } | |
638 | + | else throw("Strict value is not equal to itself.") | |
639 | + | } | |
640 | + | else throw("Strict value is not equal to itself.") | |
641 | + | } | |
642 | + | ||
643 | + | ||
644 | + | ||
645 | + | @Callable(bA) | |
646 | + | func fixedGene (bz,at,au) = { | |
647 | + | let bT = A(bA.payments[1]) | |
648 | + | if ((bT == bT)) | |
649 | + | then if (if ((at != 1)) | |
650 | + | then (at != 2) | |
651 | + | else false) | |
652 | + | then throw("FG: Parent fixed gene can be only 1 or 2") | |
653 | + | else { | |
654 | + | let bU = value(bA.payments[0]) | |
655 | + | if ((bU.amount != 1)) | |
656 | + | then throw("NFT is not attached") | |
657 | + | else { | |
658 | + | let cg = aL(invoke(x(), "checkArtefactDetails", [toBase58String(value(bU.assetId))], nil)) | |
659 | + | if ((cg == cg)) | |
660 | + | then if ((cg != "ART-FIXGENE")) | |
661 | + | then throw("You need to attach a ART-FIXGENE artefact") | |
662 | + | else ((by(bz, bA, at, au, "", 0) ++ bT) ++ [Burn(value(bU.assetId), 1)]) | |
663 | + | else throw("Strict value is not equal to itself.") | |
664 | + | } | |
665 | + | } | |
666 | + | else throw("Strict value is not equal to itself.") | |
667 | + | } | |
668 | + | ||
669 | + | ||
670 | + | ||
671 | + | @Callable(bA) | |
672 | + | func freeGene (bz) = { | |
673 | + | let bT = A(bA.payments[1]) | |
674 | + | if ((bT == bT)) | |
675 | + | then { | |
676 | + | let bU = value(bA.payments[0]) | |
677 | + | if ((bU.amount != 1)) | |
678 | + | then throw("NFT is not attached") | |
679 | + | else { | |
680 | + | let cg = aL(invoke(x(), "checkArtefactDetails", [toBase58String(value(bU.assetId))], nil)) | |
681 | + | if ((cg == cg)) | |
682 | + | then if ((cg != "ART-FREEGENE")) | |
683 | + | then throw("You need to attach a ART-FREEGENE artefact") | |
684 | + | else { | |
685 | + | let bC = Q(toString(bA.caller), fromBase58String(bz)) | |
686 | + | let bF = getIntegerValue(this, bC) | |
687 | + | let ch = bM(fromBase58String(bz), bF) | |
688 | + | let ci = ac(8, fromBase58String(bz), bF, 3) | |
689 | + | ((by(bz, bA, 0, 0, ch, ci) ++ bT) ++ [Burn(value(bU.assetId), 1)]) | |
690 | + | } | |
691 | + | else throw("Strict value is not equal to itself.") | |
692 | + | } | |
693 | + | } | |
694 | + | else throw("Strict value is not equal to itself.") | |
695 | + | } | |
696 | + | ||
697 | + | ||
698 | + | ||
699 | + | @Callable(bA) | |
700 | + | func finishHatching (bz) = if ((size(bA.payments) != 1)) | |
701 | + | then throw("Wrong amount of payments!") | |
702 | + | else { | |
703 | + | let bT = A(bA.payments[0]) | |
704 | + | if ((bT == bT)) | |
705 | + | then (by(bz, bA, 0, 0, "", 0) ++ bT) | |
706 | + | else throw("Strict value is not equal to itself.") | |
707 | + | } | |
708 | + | ||
709 | + | ||
710 | + | ||
711 | + | @Callable(bA) | |
712 | + | func configureOracle (cj) = if ((bA.caller != this)) | |
713 | + | then throw("ICU: admin only") | |
714 | + | else [StringEntry("static_oracleAddress", cj)] | |
715 | + | ||
716 | + | ||
717 | + | ||
718 | + | @Callable(bA) | |
719 | + | func reduceRarity (aC,bI) = { | |
720 | + | let bK = fromBase58String(aC) | |
721 | + | if (if ((bA.caller != z())) | |
722 | + | then (bA.caller != this) | |
723 | + | else false) | |
724 | + | then throw("admin, items or rebirth only") | |
725 | + | else { | |
726 | + | let ck = value(assetInfo(bK)).name | |
727 | + | [IntegerEntry(U(ck), (W(U(ck)) - 1)), IntegerEntry((("stats_" + bI) + "_quantity"), (W((("stats_" + bI) + "_quantity")) - 1))] | |
728 | + | } | |
729 | + | } | |
730 | + | ||
731 | + | ||
732 | + | @Verifier(cl) | |
733 | + | func cm () = if (P()) | |
734 | + | then sigVerify(cl.bodyBytes, cl.proofs[0], cl.senderPublicKey) | |
735 | + | else { | |
736 | + | let cn = base58'6TdaXEfhnjYquvPf3yV7MFxt2CbgFmaqsvGwkKfXtKi4' | |
737 | + | let co = base58'7DsP2WaMLocbHuUxux7pbXRjTrrZ1TFQPsi5QumS3gr8' | |
738 | + | let cp = base58'BpFWP3p3JgYrrP45xfrKzeMcWMEXoinj4FVPPkUiA8D3' | |
739 | + | let cq = if (sigVerify(cl.bodyBytes, cl.proofs[0], cn)) | |
740 | + | then 1 | |
741 | + | else if (sigVerify(cl.bodyBytes, cl.proofs[1], cn)) | |
742 | + | then 1 | |
743 | + | else if (sigVerify(cl.bodyBytes, cl.proofs[2], cn)) | |
744 | + | then 1 | |
745 | + | else 0 | |
746 | + | let cr = if (sigVerify(cl.bodyBytes, cl.proofs[0], co)) | |
747 | + | then 1 | |
748 | + | else if (sigVerify(cl.bodyBytes, cl.proofs[1], co)) | |
749 | + | then 1 | |
750 | + | else if (sigVerify(cl.bodyBytes, cl.proofs[2], co)) | |
751 | + | then 1 | |
752 | + | else 0 | |
753 | + | let cs = if (sigVerify(cl.bodyBytes, cl.proofs[0], cp)) | |
754 | + | then 1 | |
755 | + | else if (sigVerify(cl.bodyBytes, cl.proofs[1], cp)) | |
756 | + | then 1 | |
757 | + | else if (sigVerify(cl.bodyBytes, cl.proofs[2], cp)) | |
758 | + | then 1 | |
759 | + | else 0 | |
760 | + | let ct = ((cq + cr) + cs) | |
761 | + | let d = cl | |
762 | + | (ct >= 2) | |
763 | + | } | |
764 | + |
github/deemru/w8io/169f3d6 40.41 ms ◑![]()