tx · 4o22a1WzoUK8FBRQE6yyjB3PhHex7XUqimZ9DKVHBzAQ

3MrYoV4W5mu5ZP8rPspCXveMXusGstSPTjL:  -0.01400000 Waves

2020.01.31 08:37 [878119] smart account 3MrYoV4W5mu5ZP8rPspCXveMXusGstSPTjL > SELF 0.00000000 Waves

{ "type": 13, "id": "4o22a1WzoUK8FBRQE6yyjB3PhHex7XUqimZ9DKVHBzAQ", "fee": 1400000, "feeAssetId": null, "timestamp": 1580449107808, "version": 1, "sender": "3MrYoV4W5mu5ZP8rPspCXveMXusGstSPTjL", "senderPublicKey": "f1NbgbpkRpbigsrHaDkWZAkPgcqd8GM5G5eNmqnTD6z", "proofs": [ "3TSKbTGzevjPuA62kYyFqvAEhefekeYzP1QDDLhgvg74uYoE5xSZSVBbnSRgeECtMLAFQuD9Ma9aKeCM7JRFiQUb" ], "script": "base64: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", "chainId": 84, "height": 878119, "spentComplexity": 0 } View: original | compacted Prev: B3e53Jcbpd1Us5aDJREbyFVehKQ9ovYgX4jhWxTsigYY Next: A9ZhVj6KH3duv6BgPGtkGzUhkRpd4CumJ9PFHm9Ktz1x Diff:
OldNewDifferences
5959 }
6060 }
6161 }
62- if ((totalAddresses > 0))
63- then throw(("Nombre daddress = " + toString(totalAddresses)))
64- else {
65- let agreementDataObject = "{id: \"+id+\", title: \"+title+\" hash: \"+hash+\", address1: \"+address1+\", address2: \"+address2+\", address3: \"+address3+\", address4: \"+address4+\", address5: \"+address5+\", address6: \"+address6+\"}"
66- let paymentAssetId = if (isDefined(payment.assetId))
67- then extract(payment.assetId)
68- else throw("Waves is not accepted as payment")
69- if ((paymentAssetId != acceptedToken))
70- then throw("Only payments in SIGN are allowed at the moment")
71- else if ((amount != currentPrice))
72- then throw("The price is wrong")
73- else if (if (if (if (if (if ((size(address1) > 0))
74- then (size(address2) > 0)
75- else false)
76- then (size(address3) > 0)
77- else false)
78- then (size(address4) > 0)
79- else false)
80- then (size(address5) > 0)
81- else false)
82- then (size(address6) > 0)
83- else false)
84- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address6 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address6), 0, acceptedToken)]))
85- else if (if (if (if (if ((size(address1) > 0))
86- then (size(address2) > 0)
87- else false)
88- then (size(address3) > 0)
89- else false)
90- then (size(address4) > 0)
91- else false)
92- then (size(address5) > 0)
93- else false)
94- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken)]))
95- else if (if (if (if ((size(address1) > 0))
96- then (size(address2) > 0)
97- else false)
98- then (size(address3) > 0)
99- else false)
100- then (size(address4) > 0)
101- else false)
102- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken)]))
103- else if (if (if ((size(address1) > 0))
104- then (size(address2) > 0)
105- else false)
106- then (size(address3) > 0)
107- else false)
108- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken)]))
109- else if (if ((size(address1) > 0))
110- then (size(address2) > 0)
111- else false)
112- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken)]))
113- else throw("Sorry maximum 6 parties at the moment")
114- }
62+ let agreementDataObject = "{id: \"+id+\", title: \"+title+\" hash: \"+hash+\", address1: \"+address1+\", address2: \"+address2+\", address3: \"+address3+\", address4: \"+address4+\", address5: \"+address5+\", address6: \"+address6+\"}"
63+ let paymentAssetId = if (isDefined(payment.assetId))
64+ then extract(payment.assetId)
65+ else throw("Waves is not accepted as payment")
66+ if ((paymentAssetId != acceptedToken))
67+ then throw("Only payments in SIGN are allowed at the moment")
68+ else if ((amount != currentPrice))
69+ then throw("The price is wrong")
70+ else if ((totalAddresses == 6))
71+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address6 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address6), 0, acceptedToken)]))
72+ else if ((totalAddresses == 5))
73+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken)]))
74+ else if ((totalAddresses == 4))
75+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken)]))
76+ else if ((totalAddresses == 3))
77+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken)]))
78+ else if ((totalAddresses == 2))
79+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken)]))
80+ else throw("Needs 2 to 6 parties addresses")
11581 }
11682
11783
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let acceptedToken = base58'Gf9t8FA4H3ssoZPCwrg3KwUFCci8zuUFP9ssRsUY3s6a'
55
66 let currentPrice = 250000000
77
88 let bank = "3MzYLkQ6qCwtbxaYQ2yk1kdUudzbNg4JiTG"
99
1010 func countParties (accumulator,addr) = if ((size(addr) > 0))
1111 then (accumulator + 1)
1212 else (accumulator + 0)
1313
1414
1515 @Callable(invoke)
1616 func createAgreement (hash,title,address1,address2,address3,address4,address5,address6) = {
1717 let payment = extract(invoke.payment)
1818 let amount = extract(payment.amount)
1919 let id = extract(invoke.transactionId)
2020 let addressesArray = [address1, address2, address3, address4, address5, address6]
2121 let totalAddresses = {
2222 let $list836876 = addressesArray
2323 let $size836876 = size($list836876)
2424 let $acc0836876 = 0
2525 if (($size836876 == 0))
2626 then $acc0836876
2727 else {
2828 let $acc1836876 = countParties($acc0836876, $list836876[0])
2929 if (($size836876 == 1))
3030 then $acc1836876
3131 else {
3232 let $acc2836876 = countParties($acc1836876, $list836876[1])
3333 if (($size836876 == 2))
3434 then $acc2836876
3535 else {
3636 let $acc3836876 = countParties($acc2836876, $list836876[2])
3737 if (($size836876 == 3))
3838 then $acc3836876
3939 else {
4040 let $acc4836876 = countParties($acc3836876, $list836876[3])
4141 if (($size836876 == 4))
4242 then $acc4836876
4343 else {
4444 let $acc5836876 = countParties($acc4836876, $list836876[4])
4545 if (($size836876 == 5))
4646 then $acc5836876
4747 else {
4848 let $acc6836876 = countParties($acc5836876, $list836876[5])
4949 if (($size836876 == 6))
5050 then $acc6836876
5151 else {
5252 let $acc7836876 = countParties($acc6836876, $list836876[6])
5353 throw("List size exceed 6")
5454 }
5555 }
5656 }
5757 }
5858 }
5959 }
6060 }
6161 }
62- if ((totalAddresses > 0))
63- then throw(("Nombre daddress = " + toString(totalAddresses)))
64- else {
65- let agreementDataObject = "{id: \"+id+\", title: \"+title+\" hash: \"+hash+\", address1: \"+address1+\", address2: \"+address2+\", address3: \"+address3+\", address4: \"+address4+\", address5: \"+address5+\", address6: \"+address6+\"}"
66- let paymentAssetId = if (isDefined(payment.assetId))
67- then extract(payment.assetId)
68- else throw("Waves is not accepted as payment")
69- if ((paymentAssetId != acceptedToken))
70- then throw("Only payments in SIGN are allowed at the moment")
71- else if ((amount != currentPrice))
72- then throw("The price is wrong")
73- else if (if (if (if (if (if ((size(address1) > 0))
74- then (size(address2) > 0)
75- else false)
76- then (size(address3) > 0)
77- else false)
78- then (size(address4) > 0)
79- else false)
80- then (size(address5) > 0)
81- else false)
82- then (size(address6) > 0)
83- else false)
84- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address6 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address6), 0, acceptedToken)]))
85- else if (if (if (if (if ((size(address1) > 0))
86- then (size(address2) > 0)
87- else false)
88- then (size(address3) > 0)
89- else false)
90- then (size(address4) > 0)
91- else false)
92- then (size(address5) > 0)
93- else false)
94- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken)]))
95- else if (if (if (if ((size(address1) > 0))
96- then (size(address2) > 0)
97- else false)
98- then (size(address3) > 0)
99- else false)
100- then (size(address4) > 0)
101- else false)
102- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken)]))
103- else if (if (if ((size(address1) > 0))
104- then (size(address2) > 0)
105- else false)
106- then (size(address3) > 0)
107- else false)
108- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken)]))
109- else if (if ((size(address1) > 0))
110- then (size(address2) > 0)
111- else false)
112- then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken)]))
113- else throw("Sorry maximum 6 parties at the moment")
114- }
62+ let agreementDataObject = "{id: \"+id+\", title: \"+title+\" hash: \"+hash+\", address1: \"+address1+\", address2: \"+address2+\", address3: \"+address3+\", address4: \"+address4+\", address5: \"+address5+\", address6: \"+address6+\"}"
63+ let paymentAssetId = if (isDefined(payment.assetId))
64+ then extract(payment.assetId)
65+ else throw("Waves is not accepted as payment")
66+ if ((paymentAssetId != acceptedToken))
67+ then throw("Only payments in SIGN are allowed at the moment")
68+ else if ((amount != currentPrice))
69+ then throw("The price is wrong")
70+ else if ((totalAddresses == 6))
71+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address6 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address6), 0, acceptedToken)]))
72+ else if ((totalAddresses == 5))
73+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address5 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address5), 0, acceptedToken)]))
74+ else if ((totalAddresses == 4))
75+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address4 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address4), 0, acceptedToken)]))
76+ else if ((totalAddresses == 3))
77+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address3 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address3), 0, acceptedToken)]))
78+ else if ((totalAddresses == 2))
79+ then ScriptResult(WriteSet([DataEntry(("title_MA_" + toBase58String(id)), title), DataEntry(("hash_MA_" + toBase58String(id)), hash), DataEntry(("data_MA_" + toBase58String(id)), agreementDataObject), DataEntry(((address1 + "_MA_") + toBase58String(id)), "PENDING"), DataEntry(((address2 + "_MA_") + toBase58String(id)), "PENDING")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken), ScriptTransfer(addressFromStringValue(address1), 0, acceptedToken), ScriptTransfer(addressFromStringValue(address2), 0, acceptedToken)]))
80+ else throw("Needs 2 to 6 parties addresses")
11581 }
11682
11783
11884
11985 @Callable(invoke)
12086 func signAgreement (hash,agreementId) = {
12187 let payment = extract(invoke.payment)
12288 let amount = extract(payment.amount)
12389 let id = extract(invoke.transactionId)
12490 let signer = toBase58String(invoke.caller.bytes)
12591 let paymentAssetId = if (isDefined(payment.assetId))
12692 then extract(payment.assetId)
12793 else throw("Waves is not accepted as payment")
12894 if ((paymentAssetId != acceptedToken))
12995 then throw("Only payments in SIGN are allowed at the moment")
13096 else if ((amount != currentPrice))
13197 then throw("The price is wrong")
13298 else ScriptResult(WriteSet([DataEntry(((signer + "_MA_") + toBase58String(id)), "SIGNED")]), TransferSet([ScriptTransfer(addressFromStringValue(bank), amount, acceptedToken)]))
13399 }
134100
135101

github/deemru/w8io/169f3d6 
47.27 ms