tx · 8JvyTW3wVX82zCbdfYYgwDr5eTVTaaPEm4j9qHULcX6T

3MwsyDjSTFfcbxaGnwD9YLMMfXSu4K74HT9:  -0.00600000 Waves

2022.10.11 08:23 [2267255] smart account 3MwsyDjSTFfcbxaGnwD9YLMMfXSu4K74HT9 > SELF 0.00000000 Waves

{ "type": 13, "id": "8JvyTW3wVX82zCbdfYYgwDr5eTVTaaPEm4j9qHULcX6T", "fee": 600000, "feeAssetId": null, "timestamp": 1665465839276, "version": 2, "chainId": 84, "sender": "3MwsyDjSTFfcbxaGnwD9YLMMfXSu4K74HT9", "senderPublicKey": "GHzeUfgWYiY8LV58fLjiRxKduWQNTnNVgEHW8jQ6e6Kx", "proofs": [ "rXeAqYeT1uf4wqMKw5uF4p5UL6vgYAwPsj2SdHyBuFEkQ6xTwVehurYtNLWe6aNuUEyXvjZCdt1xHB5XtVxgTYR" ], "script": "base64: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", "height": 2267255, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: Hhk7XyZZboR7wgnbFvNwVigMmeGokek8jSQ13eAbGs3X Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func getStringOrThrow (address,key) = valueOrErrorMessage(getString(address, key), ((("Can't read '" + key) + "' at address ") + toString(address)))
5+
6+
7+func parseAddressOrThrow (maybeAddress) = valueOrErrorMessage(addressFromString(maybeAddress), (("Can't parse address from '" + maybeAddress) + "'"))
8+
9+
10+let key_registry = "registry"
11+
12+let registry = parseAddressOrThrow(getStringOrThrow(this, key_registry))
13+
14+func isAdmin (inv) = (inv.caller == this)
15+
16+
17+func modifiers (validations) = unit
18+
19+
20+func onlyAdmin (inv) = if (isAdmin(inv))
21+ then unit
22+ else throw("Permission denied")
23+
24+
25+func _splitLastLabel (name) = {
26+ let labels = split(name, ".")
27+ let lastIndex = (size(labels) - 1)
28+ let lastLabel = labels[lastIndex]
29+ let restLabels = makeString(removeByIndex(labels, lastIndex), ".")
30+ $Tuple2(lastLabel, restLabels)
31+ }
32+
33+
34+func _findResolver (name) = {
35+ let $t012401291 = _splitLastLabel(name)
36+ let lastLabel = $t012401291._1
37+ let restLabels = $t012401291._2
38+ match invoke(registry, "resolver", [lastLabel], nil) {
39+ case resolverAddress: String =>
40+ $Tuple2(addressFromString(resolverAddress), restLabels)
41+ case _ =>
42+ $Tuple2(unit, name)
43+ }
44+ }
45+
46+
47+@Callable(inv)
48+func init (registryAddress) = valueOrElse(modifiers([onlyAdmin(inv)]), [StringEntry(key_registry, registryAddress)])
49+
50+
51+
52+@Callable(inv)
53+func resolve (name) = valueOrElse(modifiers([if ((size(name) > 0))
54+ then unit
55+ else throw("Name cannot be empty")]), {
56+ let $t018561904 = _findResolver(name)
57+ let resolver = $t018561904._1
58+ let restLabels = $t018561904._2
59+ if (if (!(isDefined(resolver)))
60+ then true
61+ else (size(restLabels) == 0))
62+ then $Tuple2(nil, unit)
63+ else $Tuple2(nil, match invoke(value(resolver), "resolve", [value(restLabels)], nil) {
64+ case callbackData: String =>
65+ callbackData
66+ case _ =>
67+ unit
68+ })
69+ })
70+
71+
72+
73+@Callable(inv)
74+func whoIs (name) = valueOrElse(modifiers([if ((size(name) > 0))
75+ then unit
76+ else throw("Name cannot be empty")]), {
77+ let $t024252473 = _findResolver(name)
78+ let resolver = $t024252473._1
79+ let restLabels = $t024252473._2
80+ let lastLabel = _splitLastLabel(name)._1
81+ let levelZeroRegistrant = match invoke(registry, "owner", [lastLabel], nil) {
82+ case owner: String =>
83+ owner
84+ case _ =>
85+ unit
86+ }
87+ let levelZeroResolver = match resolver {
88+ case address: Address =>
89+ toString(address)
90+ case _ =>
91+ unit
92+ }
93+ let levelZeroCreatedAt = match invoke(registry, "nameCreated", [lastLabel], nil) {
94+ case nameCreated: Int =>
95+ nameCreated
96+ case _ =>
97+ unit
98+ }
99+ let levelZeroStatus = if (isDefined(levelZeroRegistrant))
100+ then "ACTIVE"
101+ else "NOT_REGISTERED"
102+ $Tuple2(nil, if (if (!(isDefined(resolver)))
103+ then true
104+ else (size(restLabels) == 0))
105+ then $Tuple5(levelZeroRegistrant, levelZeroResolver, levelZeroCreatedAt, unit, levelZeroStatus)
106+ else match invoke(value(resolver), "whoIs", [value(restLabels)], nil) {
107+ case _ =>
108+ if (if (if (if ($isInstanceOf($match0._1, "String"))
109+ then true
110+ else $isInstanceOf($match0._1, "Unit"))
111+ then if (if ($isInstanceOf($match0._2, "String"))
112+ then true
113+ else $isInstanceOf($match0._2, "Unit"))
114+ then if (if ($isInstanceOf($match0._3, "Int"))
115+ then true
116+ else $isInstanceOf($match0._3, "Unit"))
117+ then if (if ($isInstanceOf($match0._4, "Int"))
118+ then true
119+ else $isInstanceOf($match0._4, "Unit"))
120+ then if ($isInstanceOf($match0._5, "String"))
121+ then true
122+ else $isInstanceOf($match0._5, "Unit")
123+ else false
124+ else false
125+ else false
126+ else false)
127+ then if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ($isInstanceOf($match0, "(Unit, Unit, Unit, Unit, Unit)"))
128+ then true
129+ else $isInstanceOf($match0, "(Unit, Unit, Unit, Unit, String)"))
130+ then true
131+ else $isInstanceOf($match0, "(Unit, Unit, Unit, Int, Unit)"))
132+ then true
133+ else $isInstanceOf($match0, "(Unit, Unit, Unit, Int, String)"))
134+ then true
135+ else $isInstanceOf($match0, "(Unit, Unit, Int, Unit, Unit)"))
136+ then true
137+ else $isInstanceOf($match0, "(Unit, Unit, Int, Unit, String)"))
138+ then true
139+ else $isInstanceOf($match0, "(Unit, Unit, Int, Int, Unit)"))
140+ then true
141+ else $isInstanceOf($match0, "(Unit, Unit, Int, Int, String)"))
142+ then true
143+ else $isInstanceOf($match0, "(Unit, String, Unit, Unit, Unit)"))
144+ then true
145+ else $isInstanceOf($match0, "(Unit, String, Unit, Unit, String)"))
146+ then true
147+ else $isInstanceOf($match0, "(Unit, String, Unit, Int, Unit)"))
148+ then true
149+ else $isInstanceOf($match0, "(Unit, String, Unit, Int, String)"))
150+ then true
151+ else $isInstanceOf($match0, "(Unit, String, Int, Unit, Unit)"))
152+ then true
153+ else $isInstanceOf($match0, "(Unit, String, Int, Unit, String)"))
154+ then true
155+ else $isInstanceOf($match0, "(Unit, String, Int, Int, Unit)"))
156+ then true
157+ else $isInstanceOf($match0, "(Unit, String, Int, Int, String)"))
158+ then true
159+ else $isInstanceOf($match0, "(String, Unit, Unit, Unit, Unit)"))
160+ then true
161+ else $isInstanceOf($match0, "(String, Unit, Unit, Unit, String)"))
162+ then true
163+ else $isInstanceOf($match0, "(String, Unit, Unit, Int, Unit)"))
164+ then true
165+ else $isInstanceOf($match0, "(String, Unit, Unit, Int, String)"))
166+ then true
167+ else $isInstanceOf($match0, "(String, Unit, Int, Unit, Unit)"))
168+ then true
169+ else $isInstanceOf($match0, "(String, Unit, Int, Unit, String)"))
170+ then true
171+ else $isInstanceOf($match0, "(String, Unit, Int, Int, Unit)"))
172+ then true
173+ else $isInstanceOf($match0, "(String, Unit, Int, Int, String)"))
174+ then true
175+ else $isInstanceOf($match0, "(String, String, Unit, Unit, Unit)"))
176+ then true
177+ else $isInstanceOf($match0, "(String, String, Unit, Unit, String)"))
178+ then true
179+ else $isInstanceOf($match0, "(String, String, Unit, Int, Unit)"))
180+ then true
181+ else $isInstanceOf($match0, "(String, String, Unit, Int, String)"))
182+ then true
183+ else $isInstanceOf($match0, "(String, String, Int, Unit, Unit)"))
184+ then true
185+ else $isInstanceOf($match0, "(String, String, Int, Unit, String)"))
186+ then true
187+ else $isInstanceOf($match0, "(String, String, Int, Int, Unit)"))
188+ then true
189+ else $isInstanceOf($match0, "(String, String, Int, Int, String)")
190+ else false)
191+ then {
192+ let registrant = $match0._1
193+ let resolver_ = $match0._2
194+ let nameCreated = $match0._3
195+ let nameExpires = $match0._4
196+ let status = $match0._5
197+ $Tuple5(registrant, resolver_, nameCreated, nameExpires, status)
198+ }
199+ else $Tuple5(unit, toString(value(resolver)), unit, unit, "UNKNOWN")
200+ })
201+ })
202+
203+

github/deemru/w8io/169f3d6 
42.07 ms