tx · 81XiroeB2zh7umdxn9AQWozb8u8e4PpbDp3kwbg4FuQZ

3MwbP8ep5UVUbhEjMSFjLePiSFeXbqc1WN3:  -0.05000000 Waves

2023.10.06 13:29 [2786640] smart account 3MwbP8ep5UVUbhEjMSFjLePiSFeXbqc1WN3 > SELF 0.00000000 Waves

{ "type": 13, "id": "81XiroeB2zh7umdxn9AQWozb8u8e4PpbDp3kwbg4FuQZ", "fee": 5000000, "feeAssetId": null, "timestamp": 1696588264410, "version": 1, "sender": "3MwbP8ep5UVUbhEjMSFjLePiSFeXbqc1WN3", "senderPublicKey": "8Eqk8B7wF6YoYuwSQsxo5ZM5bZjVtP8UtjKgvoSP4bhi", "proofs": [ "4F2YuWKuiZXZxaQ6QG1fWSzcgWK8g9vU6pLWEmHD7Ym5mpJEApNAGN4myrZvQLLtrJPehHwjPzjjS1Tfte5ewKXm" ], "script": "base64:BgIkCAISCwoJAQEBAQEBCAgIEgQKAggBEgMKAQgSAwoBCBIDCgEIDAEFYXNJbnQBBXZhbHVlBAckbWF0Y2gwBQV2YWx1ZQMJAAECBQckbWF0Y2gwAgNJbnQEA2ludAUHJG1hdGNoMAUDaW50CQACAQIZd3JvbmcgdHlwZSwgZXhwZWN0ZWQ6IEludAEQd3JpdGVDb25zdFN0cmluZwIDa2V5BXZhbHVlAwkBASEBCQEJaXNEZWZpbmVkAQkAnQgCBQR0aGlzBQNrZXkJAQtTdHJpbmdFbnRyeQIFA2tleQUFdmFsdWUJAAIBCQCsAgICFWFscmVhZHkgaW5pdGlhbGl6ZWQ6IAUDa2V5ABJjb25maWdBZGRyZXNzU3RvcmUCBmNvbmZpZwANY29uZmlnQWRkcmVzcwkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCBQR0aGlzBRJjb25maWdBZGRyZXNzU3RvcmUCJ2NoaWxkcmVuLm1haW46IGNvbmZpZyBhZGRyZXNzIG5vdCBmb3VuZAIWaW52YWxpZCBjb25maWcgYWRkcmVzcwAGSEVJR0hUBQZoZWlnaHQBB2FsbG93ZWQBAm9wCQD8BwQFDWNvbmZpZ0FkZHJlc3MCCW9wQWxsb3dlZAkAzAgCBQJvcAUDbmlsBQNuaWwACnB3ckFzc2V0SWQJANkEAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFDWNvbmZpZ0FkZHJlc3MCDHBvd2VyQXNzZXRJZAIWcHdyIGFzc2V0IGlkIG5vdCBmb3VuZAAPc3Rha2luZ0NvbnRyYWN0CQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFDWNvbmZpZ0FkZHJlc3MCEGNvbnRyYWN0X3N0YWtpbmcCE25vIHN0YWtpbmdfY29udHJhY3QCF2ludmFsaWQgc3Rha2luZyBhZGRyZXNzAAhtaW5Qb3dlcgkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCaCAIFDWNvbmZpZ0FkZHJlc3MJAKwCAgkApQgBBQR0aGlzAh5fbWluX3Bvd2VyX3JlcXVpcmVkX3RvX3Byb2plY3QCIW5vIF9taW5fcG93ZXJfcmVxdWlyZWRfdG9fcHJvamVjdAAQY2hpbGRyZW5Db250cmFjdAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCBQ1jb25maWdBZGRyZXNzAhFjb250cmFjdF9jaGlsZHJlbgIUbm8gY2hpbGRyZW5fY29udHJhY3QCGGludmFsaWQgY2hpbGRyZW4gYWRkcmVzcwAId2F2ZXNEQU8JAQt2YWx1ZU9yRWxzZQIJAJ0IAgUNY29uZmlnQWRkcmVzcwIId2F2ZXNEQU8CIzNQRXdSY1lOQVV0b0Z2S3BCaEtvaXdham5aZmRvRFI2aDRoAAdmYWN0b3J5CQELdmFsdWVPckVsc2UCCQCdCAIFDWNvbmZpZ0FkZHJlc3MCDm1pbmVyc19mYWN0b3J5AiMzUEpWbTd4TFBhYm1Zb2hibnZkZ0dEWUhNd25aeEYyeDE4bQUBaQEHcHJvamVjdAkEc2tpbgdtYXhTa2luDW1pbkNvbW1pdG1lbnQIbG9ja1RpbWULaW52ZXN0bWVudHMObWF4SW52ZXN0bWVudHMQaW52ZXN0bWVudHNUb2tlbgtjb21taXRtZW50cwh0cmVhc3VyZQQBYQkBB2FsbG93ZWQBAgdwcm9qZWN0AwkAAAIFAWEFAWEEBHVzZXIJAKUIAQgFAWkGY2FsbGVyBAVwb3dlcgkBBWFzSW50AQkA/AcEBQ9zdGFraW5nQ29udHJhY3QCCXVzZXJQb3dlcgkAzAgCBQR1c2VyBQNuaWwFA25pbAMJAAACBQVwb3dlcgUFcG93ZXIDCQBmAgUIbWluUG93ZXIFBXBvd2VyCQACAQkArAICAjZOb3QgZW5vdWdoIHN0YWtlZCBwb3dlciB0byBjcmVhdGUgYSBwcm9qZWN0LiBSZXF1aXJlZCAJAKQDAQUIbWluUG93ZXIEAXAJAPwHBAUQY2hpbGRyZW5Db250cmFjdAIKcHJvamVjdEZvcgkAzAgCBQR1c2VyCQDMCAIFBHNraW4JAMwIAgUHbWF4U2tpbgkAzAgCBQ1taW5Db21taXRtZW50CQDMCAIFCGxvY2tUaW1lCQDMCAIFC2ludmVzdG1lbnRzCQDMCAIFDm1heEludmVzdG1lbnRzCQDMCAIFEGludmVzdG1lbnRzVG9rZW4JAMwIAgULY29tbWl0bWVudHMJAMwIAgUIdHJlYXN1cmUFA25pbAUDbmlsAwkAAAIFAXAFAXAFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQZjb21taXQCBWNoaWxkBmFtb3VudAQBYQkBB2FsbG93ZWQBAgZjb21taXQDCQAAAgUBYQUBYQQHYWNjb3VudAkApQgBCAUBaQZjYWxsZXIEAXMJAPwHBAUPc3Rha2luZ0NvbnRyYWN0Agt1bnN0YWtlRnJvbQkAzAgCBQdhY2NvdW50CQDMCAIFBmFtb3VudAUDbmlsBQNuaWwDCQAAAgUBcwUBcwQBYwkA/AcEBRBjaGlsZHJlbkNvbnRyYWN0Agljb21taXRGb3IJAMwIAgUFY2hpbGQJAMwIAgUHYWNjb3VudAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQpwd3JBc3NldElkBQZhbW91bnQFA25pbAMJAAACBQFjBQFjBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEOY29tbWl0Rm9yTWluZXIBA2ZvcgMJAQIhPQIJAKUIAQgFAWkGY2FsbGVyBQdmYWN0b3J5CQACAQIGZGVuaWVkBAFjCQD8BwQFEGNoaWxkcmVuQ29udHJhY3QCDmNvbW1pdEZvck1pbmVyCQDMCAIFCHdhdmVzREFPCQDMCAIFA2ZvcgUDbmlsCAUBaQhwYXltZW50cwMJAAACBQFjBQFjBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEKdW5kb0NvbW1pdAEFY2hpbGQEBnBhdXNlZAkBB2FsbG93ZWQBAgp1bmRvQ29tbWl0AwkAAAIFBnBhdXNlZAUGcGF1c2VkBAdhZGRyZXNzCQClCAEIBQFpBmNhbGxlcgQEc2tpbgkBBWFzSW50AQkA/AcEBRBjaGlsZHJlbkNvbnRyYWN0Ag11bmRvQ29tbWl0Rm9yCQDMCAIFBWNoaWxkCQDMCAIFB2FkZHJlc3MFA25pbAUDbmlsAwkAAAIFBHNraW4FBHNraW4EAXMJAPwHBAUPc3Rha2luZ0NvbnRyYWN0AghzdGFrZUZvcgkAzAgCBQdhZGRyZXNzBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFCnB3ckFzc2V0SWQFBHNraW4FA25pbAMJAAACBQFzBQFzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEEaW5pdAEEY29uZgkAzAgCCQEQd3JpdGVDb25zdFN0cmluZwIFEmNvbmZpZ0FkZHJlc3NTdG9yZQUEY29uZgUDbmlsAD3DIrc=", "chainId": 84, "height": 2786640, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 6 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func a (b) = {
5+ let c = b
6+ if ($isInstanceOf(c, "Int"))
7+ then {
8+ let d = c
9+ d
10+ }
11+ else throw("wrong type, expected: Int")
12+ }
13+
14+
15+func e (f,b) = if (!(isDefined(getString(this, f))))
16+ then StringEntry(f, b)
17+ else throw(("already initialized: " + f))
18+
19+
20+let g = "config"
21+
22+let h = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(this, g), "children.main: config address not found")), "invalid config address")
23+
24+let i = height
25+
26+func j (k) = invoke(h, "opAllowed", [k], nil)
27+
28+
29+let l = fromBase58String(valueOrErrorMessage(getString(h, "powerAssetId"), "pwr asset id not found"))
30+
31+let m = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(h, "contract_staking"), "no staking_contract")), "invalid staking address")
32+
33+let n = valueOrErrorMessage(getInteger(h, (toString(this) + "_min_power_required_to_project")), "no _min_power_required_to_project")
34+
35+let o = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(h, "contract_children"), "no children_contract")), "invalid children address")
36+
37+let p = valueOrElse(getString(h, "wavesDAO"), "3PEwRcYNAUtoFvKpBhKoiwajnZfdoDR6h4h")
38+
39+let q = valueOrElse(getString(h, "miners_factory"), "3PJVm7xLPabmYohbnvdgGDYHMwnZxF2x18m")
40+
41+@Callable(r)
42+func project (s,t,u,v,w,x,y,z,A) = {
43+ let B = j("project")
44+ if ((B == B))
45+ then {
46+ let C = toString(r.caller)
47+ let D = a(invoke(m, "userPower", [C], nil))
48+ if ((D == D))
49+ then if ((n > D))
50+ then throw(("Not enough staked power to create a project. Required " + toString(n)))
51+ else {
52+ let E = invoke(o, "projectFor", [C, s, t, u, v, w, x, y, z, A], nil)
53+ if ((E == E))
54+ then nil
55+ else throw("Strict value is not equal to itself.")
56+ }
57+ else throw("Strict value is not equal to itself.")
58+ }
59+ else throw("Strict value is not equal to itself.")
60+ }
61+
62+
63+
64+@Callable(r)
65+func commit (F,G) = {
66+ let B = j("commit")
67+ if ((B == B))
68+ then {
69+ let H = toString(r.caller)
70+ let I = invoke(m, "unstakeFrom", [H, G], nil)
71+ if ((I == I))
72+ then {
73+ let J = invoke(o, "commitFor", [F, H], [AttachedPayment(l, G)])
74+ if ((J == J))
75+ then nil
76+ else throw("Strict value is not equal to itself.")
77+ }
78+ else throw("Strict value is not equal to itself.")
79+ }
80+ else throw("Strict value is not equal to itself.")
81+ }
82+
83+
84+
85+@Callable(r)
86+func commitForMiner (K) = if ((toString(r.caller) != q))
87+ then throw("denied")
88+ else {
89+ let J = invoke(o, "commitForMiner", [p, K], r.payments)
90+ if ((J == J))
91+ then nil
92+ else throw("Strict value is not equal to itself.")
93+ }
94+
95+
96+
97+@Callable(r)
98+func undoCommit (F) = {
99+ let L = j("undoCommit")
100+ if ((L == L))
101+ then {
102+ let M = toString(r.caller)
103+ let s = a(invoke(o, "undoCommitFor", [F, M], nil))
104+ if ((s == s))
105+ then {
106+ let I = invoke(m, "stakeFor", [M], [AttachedPayment(l, s)])
107+ if ((I == I))
108+ then nil
109+ else throw("Strict value is not equal to itself.")
110+ }
111+ else throw("Strict value is not equal to itself.")
112+ }
113+ else throw("Strict value is not equal to itself.")
114+ }
115+
116+
117+
118+@Callable(r)
119+func init (N) = [e(g, N)]
120+
121+

github/deemru/w8io/03bedc9 
14.93 ms