tx · ARcDKHmuMnoVfayVQdpJ2j1qz6kqjpEvLBibvb47RbFG

3PGvfeMaCezvCWyz4RGeoQpmwzrWwv7NLYU:  -0.01600000 Waves

2023.09.26 20:57 [3838514] smart account 3PGvfeMaCezvCWyz4RGeoQpmwzrWwv7NLYU > SELF 0.00000000 Waves

{ "type": 13, "id": "ARcDKHmuMnoVfayVQdpJ2j1qz6kqjpEvLBibvb47RbFG", "fee": 1600000, "feeAssetId": null, "timestamp": 1695751064261, "version": 2, "chainId": 87, "sender": "3PGvfeMaCezvCWyz4RGeoQpmwzrWwv7NLYU", "senderPublicKey": "Un4PmpFshNAiDG32eEAyePX7JHvuxkwyMAYYpP4cFtg", "proofs": [ "2fYcBBNzkFCm7nfSfNTR1J9w3ZMDWkEcFPGtL1QwUMQ1kaXtoUWLEKGpE4PjccFH8j6gjUSavcyCiV7MGRVNbfaL" ], "script": "base64:AAIFAAAAAAAAABwIAhIDCgEIEgQKAggIEgMKAQESAwoBCBIDCgEIAAAAHgEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACAAAAB2FkZHJlc3MAAAADa2V5BAAAAAckbWF0Y2gwCQAEHQAAAAIFAAAAB2FkZHJlc3MFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAgAAAAABAAAADHRyeUdldFN0cmluZwAAAAEAAAADa2V5CQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACBQAAAAR0aGlzBQAAAANrZXkBAAAAF3N0YXRpY0tleV9vcmFjbGVBZGRyZXNzAAAAAAIAAAAUc3RhdGljX29yYWNsZUFkZHJlc3MBAAAAEnN0YXRpY0tleV9leHRyYUZlZQAAAAACAAAAD3N0YXRpY19leHRyYUZlZQEAAAAXc3RhdGljS2V5X2ZlZUFnZ3JlZ2F0b3IAAAAAAgAAABRzdGF0aWNfZmVlQWdncmVnYXRvcgEAAAAUc3RhdGljS2V5X2VnZ0Fzc2V0SWQAAAAAAgAAABFzdGF0aWNfZWdnQXNzZXRJZAEAAAAcc3RhdGljS2V5X3JlZkNvbnRyYWN0QWRkcmVzcwAAAAACAAAAGXN0YXRpY19yZWZDb250cmFjdEFkZHJlc3MBAAAAHnN0YXRpY0tleV90dXJ0bGVSZWJpcnRoQWRkcmVzcwAAAAACAAAAG3N0YXRpY190dXJ0bGVSZWJpcnRoQWRkcmVzcwEAAAAJZ2V0T3JhY2xlAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAAAx0cnlHZXRTdHJpbmcAAAABCQEAAAAXc3RhdGljS2V5X29yYWNsZUFkZHJlc3MAAAAAAQAAABBnZXRGZWVBZ2dyZWdhdG9yAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAXc3RhdGljS2V5X2ZlZUFnZ3JlZ2F0b3IAAAAAAQAAAA1nZXRFZ2dBc3NldElkAAAAAAkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAkBAAAAFHN0YXRpY0tleV9lZ2dBc3NldElkAAAAAAEAAAAOZ2V0QnVybkFkZHJlc3MAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAACAAAAEnN0YXRpY19idXJuQWRkcmVzcwEAAAAVZ2V0UmVmQ29udHJhY3RBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAcc3RhdGljS2V5X3JlZkNvbnRyYWN0QWRkcmVzcwAAAAABAAAAF2dldFR1cnRsZVJlYmlydGhBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAAec3RhdGljS2V5X3R1cnRsZVJlYmlydGhBZGRyZXNzAAAAAAEAAAAWY2hlY2tBZGRpdGlvbmFsUGF5bWVudAAAAAEAAAAHcGF5bWVudAMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAAHcGF5bWVudAAAAAdhc3NldElkCQAAAgAAAAECAAAAGkJEQ0FQOiBQbGVhc2UgYXR0YWNoIHdhdmVzBAAAAAlmZWVBbW91bnQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIJAQAAAAlnZXRPcmFjbGUAAAAACQEAAAASc3RhdGljS2V5X2V4dHJhRmVlAAAAAAMJAQAAAAIhPQAAAAIIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAAJZmVlQW1vdW50CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAB1CRENBUDogUGxlYXNlIGF0dGFjaCBleGFjdGx5IAkAAaQAAAABBQAAAAlmZWVBbW91bnQCAAAAEyBhbW91bnQgb2Ygd2F2ZWxldHMJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAEGdldEZlZUFnZ3JlZ2F0b3IAAAAABQAAAAlmZWVBbW91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bWluIG9ubHkJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAUc3RhdGljX29yYWNsZUFkZHJlc3MFAAAABm9yYWNsZQUAAAADbmlsAAAAAWkBAAAAD2lzc3VlRnJlZVR1cnRsZQAAAAIAAAAHYWRkcmVzcwAAAAd0eElkU3RyAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyCQEAAAAXZ2V0VHVydGxlUmViaXJ0aEFkZHJlc3MAAAAACQAAAgAAAAECAAAAEklTRkQ6IHJlYmlydGggb25seQQAAAAEdHhJZAkAAlkAAAABBQAAAAd0eElkU3RyBAAAABFoYXRjaGluZ1N0YXR1c0tleQkBAAAAFGdldEhhdGNoaW5nU3RhdHVzS2V5AAAAAgUAAAAHYWRkcmVzcwUAAAAEdHhJZAQAAAAPZmluaXNoSGVpZ2h0S2V5CQEAAAAaZ2V0SGF0Y2hpbmdGaW5pc2hIZWlnaHRLZXkAAAACBQAAAAdhZGRyZXNzBQAAAAR0eElkBAAAABB0b3RhbER1Y2tzQW1vdW50CQEAAAANdHJ5R2V0SW50ZWdlcgAAAAECAAAADXR1cnRsZV9hbW91bnQEAAAACmVnZ3NOZWVkZWQJAQAAABVjb3VudEVnZ3NOZWVkZWRBbW91bnQAAAABBQAAABB0b3RhbER1Y2tzQW1vdW50BAAAAAskdDA1MTUxNTI5OQkBAAAADWdldFJhbmRvbU5hbWUAAAADBQAAAAR0eElkCQAAZAAAAAIJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkAA+kAAAABBQAAAAR0eElkCQABLAAAAAIJAAEsAAAAAgUAAAAHdHhJZFN0cgIAAAALIG5vdCBmb3VuZCAJAAJYAAAAAQUAAAAEdHhJZAAAAAAAAAAAAQYEAAAAB1RSVExHZW4IBQAAAAskdDA1MTUxNTI5OQAAAAJfMQQAAAAHZmFybUdlbggFAAAACyR0MDUxNTE1Mjk5AAAAAl8yBAAAAAtkZXNjcmlwdGlvbgkAASwAAAACCQABLAAAAAICAAAADnsiZ2Vub3R5cGUiOiAiBQAAAAdUUlRMR2VuAgAAABkiLCAiY3Jvc3NicmVlZGluZyI6IHRydWV9BAAAAAVhc3NldAkABEMAAAAHBQAAAAdUUlRMR2Vu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ZAAAAAAFAAAAA25pbAUAAAADbmlsCQAETgAAAAIJAAROAAAAAgUAAAAHcmVzdWx0cwUAAAAGcmVmdW5kBQAAAAtmZWVWYWxpZGF0ZQkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAAAAAWkBAAAAEmZpbmlzaFRSVExIYXRjaGluZwAAAAEAAAAHdHhJZFN0cgQAAAALZmVlVmFsaWRhdGUJAQAAABZjaGVja0FkZGl0aW9uYWxQYXltZW50AAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAMJAAAAAAAAAgUAAAALZmVlVmFsaWRhdGUFAAAAC2ZlZVZhbGlkYXRlBAAAAAR0eElkCQACWQAAAAEFAAAAB3R4SWRTdHIEAAAAEWhhdGNoaW5nU3RhdHVzS2V5CQEAAAAUZ2V0SGF0Y2hpbmdTdGF0dXNLZXkAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAAEdHhJZAQAAAAPZmluaXNoSGVpZ2h0S2V5CQEAAAAaZ2V0SGF0Y2hpbmdGaW5pc2hIZWlnaHRLZXkAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAAEdHhJZAQAAAAJVFJUTElkS2V5CQEAAAAMZ2V0VFJUTElkS2V5AAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAABHR4SWQEAAAAEGhhdGNoaW5nVHhTdGF0dXMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAAEWhhdGNoaW5nU3RhdHVzS2V5BAAAABRoYXRjaGluZ0ZpbmlzaEhlaWdodAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwUAAAAPZmluaXNoSGVpZ2h0S2V5AwkAAAAAAAACBQAAABBoYXRjaGluZ1R4U3RhdHVzBQAAABBIYXRjaGluZ0ZpbmlzaGVkBAAAAAZUUlRMSWQJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAQAAAAxnZXRUUlRMSWRLZXkAAAACCQAE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", "height": 3838514, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EaguZ5BDDboGBErCbszWaAT5a66Z1sMr8fqeGbDErs27 Next: BU6u8t1C66GwpuebxcXj8otGB79zY8N6JrwbdAk5pEos Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func tryGetStringExternal (address,key) = match getString(address, key) {
55 case a: String =>
66 a
77 case _ =>
88 ""
99 }
1010
1111
1212 func tryGetString (key) = tryGetStringExternal(this, key)
1313
1414
1515 func staticKey_oracleAddress () = "static_oracleAddress"
1616
1717
1818 func staticKey_extraFee () = "static_extraFee"
1919
2020
2121 func staticKey_feeAggregator () = "static_feeAggregator"
2222
2323
2424 func staticKey_eggAssetId () = "static_eggAssetId"
2525
2626
2727 func staticKey_refContractAddress () = "static_refContractAddress"
2828
2929
3030 func staticKey_turtleRebirthAddress () = "static_turtleRebirthAddress"
3131
3232
3333 func getOracle () = Address(fromBase58String(tryGetString(staticKey_oracleAddress())))
3434
3535
3636 func getFeeAggregator () = Address(fromBase58String(tryGetStringExternal(getOracle(), staticKey_feeAggregator())))
3737
3838
3939 func getEggAssetId () = fromBase58String(tryGetStringExternal(getOracle(), staticKey_eggAssetId()))
4040
4141
4242 func getBurnAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_burnAddress")))
4343
4444
4545 func getRefContractAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), staticKey_refContractAddress())))
4646
4747
4848 func getTurtleRebirthAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), staticKey_turtleRebirthAddress())))
4949
5050
5151 func checkAdditionalPayment (payment) = if (isDefined(payment.assetId))
5252 then throw("BDCAP: Please attach waves")
5353 else {
5454 let feeAmount = getIntegerValue(getOracle(), staticKey_extraFee())
5555 if ((payment.amount != feeAmount))
5656 then throw((("BDCAP: Please attach exactly " + toString(feeAmount)) + " amount of wavelets"))
5757 else [ScriptTransfer(getFeeAggregator(), feeAmount, unit)]
5858 }
5959
6060
6161 let delayForHatching = 2
6262
6363 let typesAmount = 4
6464
6565 let HatchingStarted = "HATCHING_STARTED"
6666
6767 let HatchingFinished = "HATCHING_FINISHED"
6868
6969 func isLocked () = {
7070 let masterAddress = Address(base58'3PEPftf2kWZDmAaWBjs6BUJa9957kiA2PkU')
7171 match getInteger(masterAddress, "egglock") {
7272 case b: Int =>
7373 b
7474 case _ =>
7575 0
7676 }
7777 }
7878
7979
8080 func getHatchingStatusKey (address,txId) = (((address + "_") + toBase58String(txId)) + "_status")
8181
8282
8383 func getHatchingFinishHeightKey (address,txId) = (((address + "_") + toBase58String(txId)) + "_fh")
8484
8585
8686 func getTRTLIdKey (address,txId) = (((address + "_") + toBase58String(txId)) + "_di")
8787
8888
8989 func getTRTLStatsKey (genString) = (("stats_" + genString) + "_amount")
9090
9191
9292 func tryGetInteger (key) = {
9393 let val = match getInteger(this, key) {
9494 case b: Int =>
9595 b
9696 case _ =>
9797 0
9898 }
9999 val
100100 }
101101
102102
103103 let discountCoefficient = tryGetInteger("discountCoefficient")
104104
105105 func getRandomNumber (variants,txId,hatchingFinishHeight,offset) = {
106106 let randomSeedBlock = value(blockInfoByHeight((hatchingFinishHeight - 1)))
107107 let randomHash = sha256((txId + value(randomSeedBlock.vrf)))
108108 (toInt(randomHash, (offset * 8)) % variants)
109109 }
110110
111111
112112 func getRandomName (txId,hatchingFinishHeight,all) = {
113113 let colorRandom = getRandomNumber(4, txId, hatchingFinishHeight, 1)
114114 let color = ["R", "D", "S", "G"][colorRandom]
115115 let oldGenes = [$Tuple2(("TRTL-AAAAAAAA-G" + color), "8A-G")]
116116 let newGenes = [$Tuple2(("TRTL-BBBBBBBB-G" + color), "8B-G"), $Tuple2(("TRTL-CCCCCCCC-G" + color), "8C-G"), $Tuple2(("TRTL-DDDDDDDD-G" + color), "8D-G"), $Tuple2(("TRTL-EEEEEEEE-G" + color), "8E-G")]
117117 let toPickFrom = if (all)
118118 then (oldGenes ++ newGenes)
119119 else newGenes
120120 let typeRandom = getRandomNumber(size(toPickFrom), txId, hatchingFinishHeight, 0)
121121 toPickFrom[typeRandom]
122122 }
123123
124124
125125 func countEggsNeededAmount (totalTRTLsAmount) = {
126126 let n = totalTRTLsAmount
127127 let g = discountCoefficient
128128 let t = typesAmount
129129 let price = pow((100 + ((n * g) / (10 * t))), 2, 5, 1, 2, DOWN)
130130 (price * 1500000)
131131 }
132132
133133
134134 func asBoolean (value) = match value {
135135 case boolean: Boolean =>
136136 boolean
137137 case _ =>
138138 throw("TI: wrong type, expected: Boolean")
139139 }
140140
141141
142142 @Callable(i)
143143 func configureOracle (oracle) = if ((i.caller != this))
144144 then throw("ICU: admin only")
145145 else [StringEntry("static_oracleAddress", oracle)]
146146
147147
148148
149149 @Callable(i)
150150 func issueFreeTurtle (address,txIdStr) = if ((i.caller != getTurtleRebirthAddress()))
151151 then throw("ISFD: rebirth only")
152152 else {
153153 let txId = fromBase58String(txIdStr)
154154 let hatchingStatusKey = getHatchingStatusKey(address, txId)
155155 let finishHeightKey = getHatchingFinishHeightKey(address, txId)
156156 let totalDucksAmount = tryGetInteger("turtle_amount")
157157 let eggsNeeded = countEggsNeededAmount(totalDucksAmount)
158158 let $t051515299 = getRandomName(txId, (valueOrErrorMessage(transactionHeightById(txId), ((txIdStr + " not found ") + toBase58String(txId))) + 1), true)
159159 let TRTLGen = $t051515299._1
160160 let farmGen = $t051515299._2
161161 let description = (("{\"genotype\": \"" + TRTLGen) + "\", \"crossbreeding\": true}")
162162 let asset = Issue(TRTLGen, description, 1, 0, false, unit, height)
163163 let assetId = calculateAssetId(asset)
164164 let amount = (tryGetInteger(getTRTLStatsKey(TRTLGen)) + 1)
165165 let duckIdKey = getTRTLIdKey(address, txId)
166166 $Tuple2([IntegerEntry(getHatchingFinishHeightKey(address, txId), height), IntegerEntry("turtle_amount", (totalDucksAmount + 1)), IntegerEntry("turtle_last_price", (eggsNeeded / 1500000)), StringEntry(hatchingStatusKey, HatchingFinished), StringEntry(duckIdKey, toBase58String(assetId)), StringEntry(toBase58String(assetId), duckIdKey), IntegerEntry(getTRTLStatsKey(TRTLGen), amount), IntegerEntry((("stats_" + farmGen) + "_quantity"), (tryGetInteger((("stats_" + farmGen) + "_quantity")) + 1)), asset, ScriptTransfer(value(addressFromString(address)), 1, assetId)], toBase58String(assetId))
167167 }
168168
169169
170170
171171 @Callable(i)
172172 func setDiscount (val) = if ((i.caller != this))
173173 then throw("admin_only")
174174 else [IntegerEntry("discountCoefficient", val)]
175175
176176
177177
178178 @Callable(i)
179179 func startTRTLHatching (refererAddress) = {
180180 let feeValidate = checkAdditionalPayment(i.payments[0])
181181 if ((feeValidate == feeValidate))
182182 then if ((isLocked() > 0))
183183 then throw("EGG operations are temporarily locked")
184184 else {
185185 let totalTurtleAmount = tryGetInteger("turtle_amount")
186186 let eggsNeeded = countEggsNeededAmount(totalTurtleAmount)
187187 let results = [StringEntry(getHatchingStatusKey(toString(i.originCaller), i.transactionId), HatchingStarted), IntegerEntry(getHatchingFinishHeightKey(toString(i.originCaller), i.transactionId), (height + delayForHatching)), IntegerEntry("turtle_amount", (totalTurtleAmount + 1)), IntegerEntry("turtle_last_price", (eggsNeeded / 1500000))]
188188 let leftToPay = eggsNeeded
189189 let payment = if ((leftToPay != 0))
190190 then {
191191 let firstPayment = value(i.payments[1])
192192 if ((firstPayment.assetId != getEggAssetId()))
193193 then throw(("TI: You can attach only EGG tokens with the following asset id: " + toBase58String(getEggAssetId())))
194194 else if ((leftToPay > firstPayment.amount))
195195 then throw(((("TI: To buy a beach you currently need the following amount of EGGlets: " + toString(leftToPay)) + " ") + toString(i.caller)))
196196 else {
197197 let refererRewardForbeach = fraction(leftToPay, 5, 100)
198198 let refCall = asBoolean(invoke(getRefContractAddress(), "refPayment", [refererAddress], [AttachedPayment(getEggAssetId(), refererRewardForbeach)]))
199199 if ((refCall == refCall))
200200 then {
201201 let toBurn = if (refCall)
202202 then (leftToPay - refererRewardForbeach)
203203 else leftToPay
204204 let burnCall = invoke(getBurnAddress(), "burnAttachedPayments", nil, [AttachedPayment(getEggAssetId(), toBurn)])
205205 if ((burnCall == burnCall))
206206 then leftToPay
207207 else throw("Strict value is not equal to itself.")
208208 }
209209 else throw("Strict value is not equal to itself.")
210210 }
211211 }
212212 else 0
213213 if ((payment == payment))
214214 then {
215215 let refund = if ((size(i.payments) == 2))
216216 then [ScriptTransfer(i.caller, (i.payments[1].amount - leftToPay), getEggAssetId())]
217217 else nil
218218 ((results ++ refund) ++ feeValidate)
219219 }
220220 else throw("Strict value is not equal to itself.")
221221 }
222222 else throw("Strict value is not equal to itself.")
223223 }
224224
225225
226226
227227 @Callable(i)
228228 func finishTRTLHatching (txIdStr) = {
229229 let feeValidate = checkAdditionalPayment(i.payments[0])
230230 if ((feeValidate == feeValidate))
231231 then {
232232 let txId = fromBase58String(txIdStr)
233233 let hatchingStatusKey = getHatchingStatusKey(toString(i.caller), txId)
234234 let finishHeightKey = getHatchingFinishHeightKey(toString(i.caller), txId)
235235 let TRTLIdKey = getTRTLIdKey(toString(i.caller), txId)
236236 let hatchingTxStatus = getStringValue(this, hatchingStatusKey)
237237 let hatchingFinishHeight = getIntegerValue(this, finishHeightKey)
238238 if ((hatchingTxStatus == HatchingFinished))
239239 then {
240240 let TRTLId = getStringValue(this, getTRTLIdKey(toString(i.caller), txId))
241241 throw(("The Turtle was hatched and claimed already, here is the folowing: " + TRTLId))
242242 }
243243 else if ((hatchingFinishHeight > height))
244244 then throw((((("Hatching is not finished yet " + toString((hatchingFinishHeight - height))) + " blocks remaining, it will take around ") + toString((hatchingFinishHeight - height))) + " minutes"))
245245 else {
246246 let $t093969469 = getRandomName(txId, hatchingFinishHeight, false)
247247 let TRTLGen = $t093969469._1
248248 let farmGen = $t093969469._2
249249 let description = (("{\"genotype\": \"" + TRTLGen) + "\", \"crossbreeding\": true}")
250250 let asset = Issue(TRTLGen, description, 1, 0, false, unit, hatchingFinishHeight)
251251 let assetId = calculateAssetId(asset)
252252 let amount = (tryGetInteger(getTRTLStatsKey(TRTLGen)) + 1)
253253 ([StringEntry(hatchingStatusKey, HatchingFinished), StringEntry(TRTLIdKey, toBase58String(assetId)), StringEntry(toBase58String(assetId), TRTLIdKey), IntegerEntry(getTRTLStatsKey(TRTLGen), amount), IntegerEntry((("stats_" + farmGen) + "_quantity"), (tryGetInteger((("stats_" + farmGen) + "_quantity")) + 1)), asset, ScriptTransfer(i.caller, 1, assetId)] ++ feeValidate)
254254 }
255255 }
256256 else throw("Strict value is not equal to itself.")
257257 }
258258
259259
260260 @Verifier(tx)
261261 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
262262

github/deemru/w8io/3ef1775 
39.33 ms