tx · 6NZgQj1w47GjxNBB8NuCDG4XDCj6RqxHVDriZQavcGhT

3MrYoV4W5mu5ZP8rPspCXveMXusGstSPTjL:  -0.01400000 Waves

2020.01.31 12:01 [878312] smart account 3MrYoV4W5mu5ZP8rPspCXveMXusGstSPTjL > SELF 0.00000000 Waves

{ "type": 13, "id": "6NZgQj1w47GjxNBB8NuCDG4XDCj6RqxHVDriZQavcGhT", "fee": 1400000, "feeAssetId": null, "timestamp": 1580461326083, "version": 1, "sender": "3MrYoV4W5mu5ZP8rPspCXveMXusGstSPTjL", "senderPublicKey": "f1NbgbpkRpbigsrHaDkWZAkPgcqd8GM5G5eNmqnTD6z", "proofs": [ "32qp6BT3zyABce8EzE4HMvuxhrksSYgtYTdm1zhJdpWQj4v58MWpvNQHUTEpdrqUyZiRcena3P3T8HwMKphd1QkJ" ], "script": "base64:AAIDAAAAAAAAAA8IARIFCgMICAgSBAoCCAgAAAAHAAAAAA1hY2NlcHRlZFRva2VuAQAAACDopWq8yndC8nBhMjVKT0WDubke5ZlnF8Nx6tkLoQSt6wAAAAAMY3VycmVudFByaWNlAAAAAAAO5rKAAAAAAARiYW5rAgAAACMzTXpZTGtRNnFDd3RieGFZUTJ5azFrZFV1ZHpiTmc0SmlURwEAAAAIaXNBZHJlc3MAAAABAAAABGFkZHIDAwkAAAAAAAACCQABMQAAAAEFAAAABGFkZHIAAAAAAAAAACMJAAAAAAAAAgkAAS8AAAACBQAAAARhZGRyAAAAAAAAAAACAgAAAAIzTgcGCQAAAAAAAAIJAAEvAAAAAgUAAAAEYWRkcgAAAAAAAAAAAgIAAAACM00BAAAADGNvdW50UGFydGllcwAAAAIAAAALYWNjdW11bGF0b3IAAAAEYWRkcgMJAABmAAAAAgkAATEAAAABBQAAAARhZGRyAAAAAAAAAAAACQAAZAAAAAIFAAAAC2FjY3VtdWxhdG9yAAAAAAAAAAABCQAAZAAAAAIFAAAAC2FjY3VtdWxhdG9yAAAAAAAAAAAAAQAAAA5nZXRWYWx1ZVN0cmluZwAAAAEAAAAEanNvbgkAAS8AAAACCQABMAAAAAIFAAAABGpzb24AAAAAAAAAAAEJAQAAAAV2YWx1ZQAAAAEJAASzAAAAAgkAATAAAAACBQAAAARqc29uAAAAAAAAAAABAgAAAAEiAQAAAAhnZXRWYWx1ZQAAAAIAAAAEanNvbgAAAANrZXkEAAAACGtleUluZGV4CQEAAAAFdmFsdWUAAAABCQAEswAAAAIFAAAABGpzb24JAAEsAAAAAgkAASwAAAACAgAAAAEiBQAAAANrZXkCAAAAAiI6BAAAAARkYXRhCQABMAAAAAIFAAAABGpzb24JAABkAAAAAgkAAGQAAAACBQAAAAhrZXlJbmRleAkAATEAAAABBQAAAANrZXkAAAAAAAAAAAMEAAAACWpzb25WYWx1ZQkBAAAADmdldFZhbHVlU3RyaW5nAAAAAQUAAAAEZGF0YQUAAAAJanNvblZhbHVlAAAAAgAAAAZpbnZva2UBAAAAD2NyZWF0ZUFncmVlbWVudAAAAAMAAAAEaGFzaAAAAAV0aXRsZQAAAAlhZGRyZXNzZXMEAAAAB3BheW1lbnQJAQAAAAdleHRyYWN0AAAAAQgFAAAABmludm9rZQAAAAdwYXltZW50BAAAAAZhbW91bnQJAQAAAAdleHRyYWN0AAAAAQgFAAAAB3BheW1lbnQAAAAGYW1vdW50BAAAAAJpZAkBAAAAB2V4dHJhY3QAAAABCAUAAAAGaW52b2tlAAAADXRyYW5zYWN0aW9uSWQEAAAACGFkZHJlc3MxCQEAAAAIZ2V0VmFsdWUAAAACBQAAAAlhZGRyZXNzZXMCAAAACGFkZHJlc3MxBAAAAAhhZGRyZXNzMgkBAAAACGdldFZhbHVlAAAAAgUAAAAJYWRkcmVzc2VzAgAAAAhhZGRyZXNzMgQAAAAIYWRkcmVzczMJAQAAAAhnZXRWYWx1ZQAAAAIFAAAACWFkZHJlc3NlcwIAAAAIYWRkcmVzczMEAAAACGFkZHJlc3M0CQEAAAAIZ2V0VmFsdWUAAAACBQAAAAlhZGRyZXNzZXMCAAAACGFkZHJlc3M0BAAAAAhhZGRyZXNzNQkBAAAACGdldFZhbHVlAAAAAgUAAAAJYWRkcmVzc2VzAgAAAAhhZGRyZXNzNQQAAAAIYWRkcmVzczYJAQAAAAhnZXRWYWx1ZQAAAAIFAAAACWFkZHJlc3NlcwIAAAAIYWRkcmVzczYEAAAADmFkZHJlc3Nlc0FycmF5CQAETAAAAAIFAAAACGFkZHJlc3MxCQAETAAAAAIFAAAACGFkZHJlc3MyCQAETAAAAAIFAAAACGFkZHJlc3MzCQAETAAAAAIFAAAACGFkZHJlc3M0CQAETAAAAAIFAAAACGFkZHJlc3M1CQAETAAAAAIFAAAACGFkZHJlc3M2BQAAAANuaWwEAAAADnRvdGFsQWRkcmVzc2VzBAAAAA0kbGlzdDE2MTExNjUxBQAAAA5hZGRyZXNzZXNBcnJheQQAAAANJHNpemUxNjExMTY1MQkAAZAAAAABBQAAAA0kbGlzdDE2MTExNjUxBAAAAA0kYWNjMDE2MTExNjUxAAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTE2MTExNjUxAAAAAAAAAAAABQAAAA0kYWNjMDE2MTExNjUxBAAAAA0kYWNjMTE2MTExNjUxCQEAAAAMY291bnRQYXJ0aWVzAAAAAgUAAAANJGFjYzAxNjExMTY1MQkAAZEAAAACBQAAAA0kbGlzdDE2MTExNjUxAAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTE2MTExNjUxAAAAAAAAAAABBQAAAA0kYWNjMTE2MTExNjUxBAAAAA0kYWNjMjE2MTExNjUxCQEAAAAMY291bnRQYXJ0aWVzAAAAAgUAAAANJGFjYzExNjExMTY1MQkAAZEAAAACBQAAAA0kbGlzdDE2MTExNjUxAAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTE2MTExNjUxAAAAAAAAAAACBQAAAA0kYWNjMjE2MTExNjUxBAAAAA0kYWNjMzE2MTExNjUxCQEAAAAMY291bnRQYXJ0aWVzAAAAAgUAAAANJGFjYzIxNjExMTY1MQkAAZEAAAACBQAAAA0kbGlzdDE2MTExNjUxAAAAAAAAAAACAwkAAAAAAAACBQAAAA0kc2l6ZTE2MTExNjUxAAAAAAAAAAADBQAAAA0kYWNjMzE2MTExNjUxBAAAAA0kYWNjNDE2MTExNjUxCQEAAAAMY291bnRQYXJ0aWVzAAAAAgUAAAANJGFjYzMxNjExMTY1MQkAAZEAAAACBQAAAA0kbGlzdDE2MTExNjUxAAAAAAAAAAADAwkAAAAAAAACBQAAAA0kc2l6ZTE2MTExNjUxAAAAAAAAAAAEBQAAAA0kYWNjNDE2MTExNjUxBAAAAA0kYWNjNTE2MTExNjUxCQEAAAAMY291bnRQYXJ0aWVzAAAAAgUAAAANJGFjYzQxNjExMTY1MQkAAZEAAAACBQAAAA0kbGlzdDE2MTExNjUxAAAAAAAAAAAEAwkAAAAAAAACBQAAAA0kc2l6ZTE2MTExNjUxAAAAAAAAAAAFBQAAAA0kYWNjNTE2MTExNjUxBAAAAA0kYWNjNjE2MTExNjUxCQEAAAAMY291bnRQYXJ0aWVzAAAAAgUAAAANJGFjYzUxNjExMTY1MQkAAZEAAAACBQAAAA0kbGlzdDE2MTExNjUxAAAAAAAAAAAFAwkAAAAAAAACBQAAAA0kc2l6ZTE2MTExNjUxAAAAAAAAAAAGBQAAAA0kYWNjNjE2MTExNjUxBAAAAA0kYWNjNzE2MTExNjUxCQEAAAAMY291bnRQYXJ0aWVzAAAAAgUAAAANJGFjYzYxNjExMTY1MQkAAZEAAAACBQAAAA0kbGlzdDE2MTExNjUxAAAA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", "chainId": 84, "height": 878312, "spentComplexity": 0 } View: original | compacted Prev: BwtNn43nLxo8Qgtn6Y7QYARb5SvyiNYHtHBN3jCD5q59 Next: HdmBb4jvHbRBJ7L8348ggN49ZDn98SfuHv5qjFTqWUEz Diff:
OldNewDifferences
77
88 let c = "3MzYLkQ6qCwtbxaYQ2yk1kdUudzbNg4JiTG"
99
10-func d (e,f) = if ((size(f) == 35))
11- then (e + 1)
12- else (e + 0)
10+func d (e) = if (if ((size(e) == 35))
11+ then (take(e, 2) == "3N")
12+ else false)
13+ then true
14+ else (take(e, 2) == "3M")
1315
1416
15-func g (h) = take(drop(h, 1), value(indexOf(drop(h, 1), "\"")))
17+func f (g,e) = if ((size(e) > 0))
18+ then (g + 1)
19+ else (g + 0)
1620
1721
18-func i (h,j) = {
19- let k = value(indexOf(h, (("\"" + j) + "\":")))
20- let l = drop(h, ((k + size(j)) + 3))
21- let m = g(l)
22- m
22+func h (i) = take(drop(i, 1), value(indexOf(drop(i, 1), "\"")))
23+
24+
25+func j (i,k) = {
26+ let l = value(indexOf(i, (("\"" + k) + "\":")))
27+ let m = drop(i, ((l + size(k)) + 3))
28+ let n = h(m)
29+ n
2330 }
2431
2532
26-@Callable(n)
27-func createAgreement (o,p,q) = {
28- let r = extract(n.payment)
29- let s = extract(r.amount)
30- let t = extract(n.transactionId)
31- let u = i(q, "address1")
32- let v = i(q, "address2")
33- let w = i(q, "address3")
34- let x = i(q, "address4")
35- let y = i(q, "address5")
36- let z = i(q, "address6")
37- let A = [u, v, w, x, y, z]
38- let B = {
39- let C = A
40- let D = size(C)
41- let E = 0
42- if ((D == 0))
43- then E
33+@Callable(o)
34+func createAgreement (p,q,r) = {
35+ let s = extract(o.payment)
36+ let t = extract(s.amount)
37+ let u = extract(o.transactionId)
38+ let v = j(r, "address1")
39+ let w = j(r, "address2")
40+ let x = j(r, "address3")
41+ let y = j(r, "address4")
42+ let z = j(r, "address5")
43+ let A = j(r, "address6")
44+ let B = [v, w, x, y, z, A]
45+ let C = {
46+ let D = B
47+ let E = size(D)
48+ let F = 0
49+ if ((E == 0))
50+ then F
4451 else {
45- let F = d(E, C[0])
46- if ((D == 1))
47- then F
52+ let G = f(F, D[0])
53+ if ((E == 1))
54+ then G
4855 else {
49- let G = d(F, C[1])
50- if ((D == 2))
51- then G
56+ let H = f(G, D[1])
57+ if ((E == 2))
58+ then H
5259 else {
53- let H = d(G, C[2])
54- if ((D == 3))
55- then H
60+ let I = f(H, D[2])
61+ if ((E == 3))
62+ then I
5663 else {
57- let I = d(H, C[3])
58- if ((D == 4))
59- then I
64+ let J = f(I, D[3])
65+ if ((E == 4))
66+ then J
6067 else {
61- let J = d(I, C[4])
62- if ((D == 5))
63- then J
68+ let K = f(J, D[4])
69+ if ((E == 5))
70+ then K
6471 else {
65- let K = d(J, C[5])
66- if ((D == 6))
67- then K
72+ let L = f(K, D[5])
73+ if ((E == 6))
74+ then L
6875 else {
69- let L = d(K, C[6])
76+ let M = f(L, D[6])
7077 throw("List size exceed 6")
7178 }
7279 }
7683 }
7784 }
7885 }
79- let M = (((((((((((((((((("{id: '" + toBase58String(t)) + "', title: '") + p) + "' hash: '") + o) + "', address1: '") + A[0]) + "', address2: '") + A[1]) + "', address3: '") + A[2]) + "', address4: '") + A[3]) + "', address5: '") + A[4]) + "', address6: '") + A[5]) + "'}")
80- let N = if (isDefined(r.assetId))
81- then extract(r.assetId)
86+ let N = (((((((((((((((((("{id: '" + toBase58String(u)) + "', title: '") + q) + "' hash: '") + p) + "', address1: '") + B[0]) + "', address2: '") + B[1]) + "', address3: '") + B[2]) + "', address4: '") + B[3]) + "', address5: '") + B[4]) + "', address6: '") + B[5]) + "'}")
87+ let O = if (isDefined(s.assetId))
88+ then extract(s.assetId)
8289 else throw("Waves is not accepted as payment")
83- if ((N != a))
90+ if ((O != a))
8491 then throw("Only payments in SIGN are allowed at the moment")
85- else if (((b * B) > s))
86- then throw(("The price is wrong, it should be " + toString((b * B))))
87- else if ((B == 6))
88- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[3] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[4] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[5] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a), ScriptTransfer(addressFromStringValue(A[3]), 0, a), ScriptTransfer(addressFromStringValue(A[4]), 0, a), ScriptTransfer(addressFromStringValue(A[5]), 0, a)]))
89- else if ((B == 5))
90- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[3] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[4] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a), ScriptTransfer(addressFromStringValue(A[3]), 0, a), ScriptTransfer(addressFromStringValue(A[4]), 0, a)]))
91- else if ((B == 4))
92- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[3] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a), ScriptTransfer(addressFromStringValue(A[3]), 0, a)]))
93- else if ((B == 3))
94- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a)]))
95- else if ((B == 2))
96- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a)]))
97- else throw(("Needs 2 to 6 parties addresses" + toString(B)))
92+ else if (((b * C) > t))
93+ then throw(("The price is wrong, it should be " + toString((b * C))))
94+ else if ((C == 6))
95+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[3] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[4] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[5] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a), ScriptTransfer(addressFromStringValue(B[3]), 0, a), ScriptTransfer(addressFromStringValue(B[4]), 0, a), ScriptTransfer(addressFromStringValue(B[5]), 0, a)]))
96+ else if ((C == 5))
97+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[3] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[4] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a), ScriptTransfer(addressFromStringValue(B[3]), 0, a), ScriptTransfer(addressFromStringValue(B[4]), 0, a)]))
98+ else if ((C == 4))
99+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[3] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a), ScriptTransfer(addressFromStringValue(B[3]), 0, a)]))
100+ else if ((C == 3))
101+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a)]))
102+ else if ((C == 2))
103+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a)]))
104+ else throw(("Needs 2 to 6 parties addresses" + toString(C)))
98105 }
99106
100107
101108
102-@Callable(n)
103-func signAgreement (o,O) = {
104- let r = extract(n.payment)
105- let s = extract(r.amount)
106- let t = extract(n.transactionId)
107- let P = toBase58String(n.caller.bytes)
108- let Q = {
109- let R = getString(this, ((P + "_MA_") + toBase58String(t)))
110- if ($isInstanceOf(R, "String"))
109+@Callable(o)
110+func signAgreement (p,P) = {
111+ let s = extract(o.payment)
112+ let t = extract(s.amount)
113+ let u = extract(o.transactionId)
114+ let Q = toBase58String(o.caller.bytes)
115+ let R = {
116+ let S = getString(this, ((Q + "_MA_") + toBase58String(u)))
117+ if ($isInstanceOf(S, "String"))
111118 then {
112- let S = R
113- S
119+ let T = S
120+ T
114121 }
115122 else throw("There is no corresponding signing request")
116123 }
117- let N = if (isDefined(r.assetId))
118- then extract(r.assetId)
124+ let O = if (isDefined(s.assetId))
125+ then extract(s.assetId)
119126 else throw("Waves is not accepted as payment")
120- if ((N != a))
127+ if ((O != a))
121128 then throw("Only payments in SIGN are allowed at the moment")
122- else if ((s != b))
129+ else if ((t != b))
123130 then throw("The price is wrong")
124- else ScriptResult(WriteSet([DataEntry(((P + "_MA_") + toBase58String(t)), "SIGNED")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a)]))
131+ else ScriptResult(WriteSet([DataEntry(((Q + "_MA_") + toBase58String(u)), "SIGNED")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a)]))
125132 }
126133
127134
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = base58'Gf9t8FA4H3ssoZPCwrg3KwUFCci8zuUFP9ssRsUY3s6a'
55
66 let b = 250000000
77
88 let c = "3MzYLkQ6qCwtbxaYQ2yk1kdUudzbNg4JiTG"
99
10-func d (e,f) = if ((size(f) == 35))
11- then (e + 1)
12- else (e + 0)
10+func d (e) = if (if ((size(e) == 35))
11+ then (take(e, 2) == "3N")
12+ else false)
13+ then true
14+ else (take(e, 2) == "3M")
1315
1416
15-func g (h) = take(drop(h, 1), value(indexOf(drop(h, 1), "\"")))
17+func f (g,e) = if ((size(e) > 0))
18+ then (g + 1)
19+ else (g + 0)
1620
1721
18-func i (h,j) = {
19- let k = value(indexOf(h, (("\"" + j) + "\":")))
20- let l = drop(h, ((k + size(j)) + 3))
21- let m = g(l)
22- m
22+func h (i) = take(drop(i, 1), value(indexOf(drop(i, 1), "\"")))
23+
24+
25+func j (i,k) = {
26+ let l = value(indexOf(i, (("\"" + k) + "\":")))
27+ let m = drop(i, ((l + size(k)) + 3))
28+ let n = h(m)
29+ n
2330 }
2431
2532
26-@Callable(n)
27-func createAgreement (o,p,q) = {
28- let r = extract(n.payment)
29- let s = extract(r.amount)
30- let t = extract(n.transactionId)
31- let u = i(q, "address1")
32- let v = i(q, "address2")
33- let w = i(q, "address3")
34- let x = i(q, "address4")
35- let y = i(q, "address5")
36- let z = i(q, "address6")
37- let A = [u, v, w, x, y, z]
38- let B = {
39- let C = A
40- let D = size(C)
41- let E = 0
42- if ((D == 0))
43- then E
33+@Callable(o)
34+func createAgreement (p,q,r) = {
35+ let s = extract(o.payment)
36+ let t = extract(s.amount)
37+ let u = extract(o.transactionId)
38+ let v = j(r, "address1")
39+ let w = j(r, "address2")
40+ let x = j(r, "address3")
41+ let y = j(r, "address4")
42+ let z = j(r, "address5")
43+ let A = j(r, "address6")
44+ let B = [v, w, x, y, z, A]
45+ let C = {
46+ let D = B
47+ let E = size(D)
48+ let F = 0
49+ if ((E == 0))
50+ then F
4451 else {
45- let F = d(E, C[0])
46- if ((D == 1))
47- then F
52+ let G = f(F, D[0])
53+ if ((E == 1))
54+ then G
4855 else {
49- let G = d(F, C[1])
50- if ((D == 2))
51- then G
56+ let H = f(G, D[1])
57+ if ((E == 2))
58+ then H
5259 else {
53- let H = d(G, C[2])
54- if ((D == 3))
55- then H
60+ let I = f(H, D[2])
61+ if ((E == 3))
62+ then I
5663 else {
57- let I = d(H, C[3])
58- if ((D == 4))
59- then I
64+ let J = f(I, D[3])
65+ if ((E == 4))
66+ then J
6067 else {
61- let J = d(I, C[4])
62- if ((D == 5))
63- then J
68+ let K = f(J, D[4])
69+ if ((E == 5))
70+ then K
6471 else {
65- let K = d(J, C[5])
66- if ((D == 6))
67- then K
72+ let L = f(K, D[5])
73+ if ((E == 6))
74+ then L
6875 else {
69- let L = d(K, C[6])
76+ let M = f(L, D[6])
7077 throw("List size exceed 6")
7178 }
7279 }
7380 }
7481 }
7582 }
7683 }
7784 }
7885 }
79- let M = (((((((((((((((((("{id: '" + toBase58String(t)) + "', title: '") + p) + "' hash: '") + o) + "', address1: '") + A[0]) + "', address2: '") + A[1]) + "', address3: '") + A[2]) + "', address4: '") + A[3]) + "', address5: '") + A[4]) + "', address6: '") + A[5]) + "'}")
80- let N = if (isDefined(r.assetId))
81- then extract(r.assetId)
86+ let N = (((((((((((((((((("{id: '" + toBase58String(u)) + "', title: '") + q) + "' hash: '") + p) + "', address1: '") + B[0]) + "', address2: '") + B[1]) + "', address3: '") + B[2]) + "', address4: '") + B[3]) + "', address5: '") + B[4]) + "', address6: '") + B[5]) + "'}")
87+ let O = if (isDefined(s.assetId))
88+ then extract(s.assetId)
8289 else throw("Waves is not accepted as payment")
83- if ((N != a))
90+ if ((O != a))
8491 then throw("Only payments in SIGN are allowed at the moment")
85- else if (((b * B) > s))
86- then throw(("The price is wrong, it should be " + toString((b * B))))
87- else if ((B == 6))
88- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[3] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[4] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[5] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a), ScriptTransfer(addressFromStringValue(A[3]), 0, a), ScriptTransfer(addressFromStringValue(A[4]), 0, a), ScriptTransfer(addressFromStringValue(A[5]), 0, a)]))
89- else if ((B == 5))
90- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[3] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[4] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a), ScriptTransfer(addressFromStringValue(A[3]), 0, a), ScriptTransfer(addressFromStringValue(A[4]), 0, a)]))
91- else if ((B == 4))
92- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[3] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a), ScriptTransfer(addressFromStringValue(A[3]), 0, a)]))
93- else if ((B == 3))
94- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[2] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a), ScriptTransfer(addressFromStringValue(A[2]), 0, a)]))
95- else if ((B == 2))
96- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(t)), p), DataEntry(("hash_MA_" + toBase58String(t)), o), DataEntry(("data_MA_" + toBase58String(t)), M), DataEntry(((A[0] + "_MA_") + toBase58String(t)), "PENDING"), DataEntry(((A[1] + "_MA_") + toBase58String(t)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a), ScriptTransfer(addressFromStringValue(A[0]), 0, a), ScriptTransfer(addressFromStringValue(A[1]), 0, a)]))
97- else throw(("Needs 2 to 6 parties addresses" + toString(B)))
92+ else if (((b * C) > t))
93+ then throw(("The price is wrong, it should be " + toString((b * C))))
94+ else if ((C == 6))
95+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[3] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[4] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[5] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a), ScriptTransfer(addressFromStringValue(B[3]), 0, a), ScriptTransfer(addressFromStringValue(B[4]), 0, a), ScriptTransfer(addressFromStringValue(B[5]), 0, a)]))
96+ else if ((C == 5))
97+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[3] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[4] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a), ScriptTransfer(addressFromStringValue(B[3]), 0, a), ScriptTransfer(addressFromStringValue(B[4]), 0, a)]))
98+ else if ((C == 4))
99+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[3] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a), ScriptTransfer(addressFromStringValue(B[3]), 0, a)]))
100+ else if ((C == 3))
101+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[2] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a), ScriptTransfer(addressFromStringValue(B[2]), 0, a)]))
102+ else if ((C == 2))
103+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(u)), q), DataEntry(("hash_MA_" + toBase58String(u)), p), DataEntry(("data_MA_" + toBase58String(u)), N), DataEntry(((B[0] + "_MA_") + toBase58String(u)), "PENDING"), DataEntry(((B[1] + "_MA_") + toBase58String(u)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a), ScriptTransfer(addressFromStringValue(B[0]), 0, a), ScriptTransfer(addressFromStringValue(B[1]), 0, a)]))
104+ else throw(("Needs 2 to 6 parties addresses" + toString(C)))
98105 }
99106
100107
101108
102-@Callable(n)
103-func signAgreement (o,O) = {
104- let r = extract(n.payment)
105- let s = extract(r.amount)
106- let t = extract(n.transactionId)
107- let P = toBase58String(n.caller.bytes)
108- let Q = {
109- let R = getString(this, ((P + "_MA_") + toBase58String(t)))
110- if ($isInstanceOf(R, "String"))
109+@Callable(o)
110+func signAgreement (p,P) = {
111+ let s = extract(o.payment)
112+ let t = extract(s.amount)
113+ let u = extract(o.transactionId)
114+ let Q = toBase58String(o.caller.bytes)
115+ let R = {
116+ let S = getString(this, ((Q + "_MA_") + toBase58String(u)))
117+ if ($isInstanceOf(S, "String"))
111118 then {
112- let S = R
113- S
119+ let T = S
120+ T
114121 }
115122 else throw("There is no corresponding signing request")
116123 }
117- let N = if (isDefined(r.assetId))
118- then extract(r.assetId)
124+ let O = if (isDefined(s.assetId))
125+ then extract(s.assetId)
119126 else throw("Waves is not accepted as payment")
120- if ((N != a))
127+ if ((O != a))
121128 then throw("Only payments in SIGN are allowed at the moment")
122- else if ((s != b))
129+ else if ((t != b))
123130 then throw("The price is wrong")
124- else ScriptResult(WriteSet([DataEntry(((P + "_MA_") + toBase58String(t)), "SIGNED")]), TransferSet([ScriptTransfer(addressFromStringValue(c), s, a)]))
131+ else ScriptResult(WriteSet([DataEntry(((Q + "_MA_") + toBase58String(u)), "SIGNED")]), TransferSet([ScriptTransfer(addressFromStringValue(c), t, a)]))
125132 }
126133
127134

github/deemru/w8io/169f3d6 
138.92 ms