tx · DrW6RfPzSEUDwitFouUtoTkR3gTwDedwgSUHmsUBN68W

3NBLecFWuYaQuc56Nt6nZm8jdPt9f8vfyFr:  -0.01400000 Waves

2023.03.13 18:22 [2488436] smart account 3NBLecFWuYaQuc56Nt6nZm8jdPt9f8vfyFr > SELF 0.00000000 Waves

{ "type": 13, "id": "DrW6RfPzSEUDwitFouUtoTkR3gTwDedwgSUHmsUBN68W", "fee": 1400000, "feeAssetId": null, "timestamp": 1678720971551, "version": 2, "chainId": 84, "sender": "3NBLecFWuYaQuc56Nt6nZm8jdPt9f8vfyFr", "senderPublicKey": "GV3FbBXZru1WpaCa9x1zhwSWrXSDrxKMVEV7BML6EzY1", "proofs": [ "4L27nNDGNhmvExBZsBgUHKx46STmyUACJ8w43Cxnzvosu9dQxToT1iNpzeqJLdnThkTC7NusAU7U7YPhieQzk5oe" ], "script": "base64:AAIEAAAAAAAAAA8IAhIFCgMBAQESABIAEgAAAAANAAAAAARWT1RFAQAAACAIZYS3D/CKahrz4mjoLgiQJMPTJ1gDzSz2Ll4L39oVpAAAAAAidm90aW5nX3RpbWVzdGFtcF9jb250cm9sbGVyX3B1YmtleQEAAAAgG71LvoftgLN5LoDoTEAt274Hm4nt5A5pW1Ja7yxUD20AAAAAEmNvbnRyb2xsZXJfYWRkcmVzcwkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQUAAAAidm90aW5nX3RpbWVzdGFtcF9jb250cm9sbGVyX3B1YmtleQAAAAAMbGF1bmNoX2Vycm9yAgAAACREYXBwIHdpbGwgc3RhcnQgVm90aW5nIGF0IFRpbWVzdGFtcCAAAAAAA21zZwIAAAAtPGgxPllvdSBWb3RlIFN1Ym1pdHRlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+AAAAAAlweW10ZXJyb3ICAAAALERBcHAgTmVlZCAxIFZPVEUgVG9rZW4gYXMgQXR0YWNoIHBheW1lbnRbMV0uAAAAAAttaW5iYWxlcnJvcgIAAABeTWluLiAxIFZPVEUgcmVxdWlyZWQgb24gWW91ciBBZGRyZXNzIHRvIFZvdGUuIFBsZWFzZSBNaW50IG9yIGhvbGQgbWluLiAxIFZPVEUgb24gdGhpcyBBZGRyZXNzLgAAAAAIYXNzZXRlcnIJAAEsAAAAAgkAASwAAAACAgAAACZJbmNvcnJlY3QgYXNzZXQgYXR0YWNoLCBwbGVhc2UgYXR0YWNoIAkAAlgAAAABBQAAAARWT1RFAgAAAA4gQXNzZXRJRCBPbmx5LgAAAAAJbWluYW10ZXJyAgAAACNQbGVhc2UgQXR0YWNoIEV4YWN0IDEgVk9URSBUbyBWb3RlLgAAAAAHdm90ZUVycgIAAAAdVm90aW5nIGlzIE92ZXIgZm9yIHRoaXMgRGFwcC4AAAAAD0FscmVhZHlWb3RlZEVycgIAAAApWW91IGhhdmUgQWxyZWFkeSBWb3RlZCBmcm9tIHRoaXMgYWRkcmVzcy4AAAAAElByZXZpb3VzdG90YWx2b3RlcwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAAAtUb3RhbF9Wb3RlcwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAAAAAAAAp0b3RhbHZvdGVzCQAAZAAAAAIFAAAAElByZXZpb3VzdG90YWx2b3RlcwAAAAAAAAAAAQAAAAQAAAABaQEAAAATU2V0Vm90aW5nVGltZVN0YW1wcwAAAAMAAAAWVm90aW5nX1N0YXJ0X1RpbWVTdGFtcAAAABRWb3RpbmdfRW5kX1RpbWVTdGFtcAAAABdUb3RhbF9EaXN0cmJ1dGVkX1Rva2VucwQAAAAHU3RhcnRUUwUAAAAWVm90aW5nX1N0YXJ0X1RpbWVTdGFtcAQAAAAFRW5kVFMFAAAAFFZvdGluZ19FbmRfVGltZVN0YW1wAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAABJjb250cm9sbGVyX2FkZHJlc3MJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAJVRoaXMgQWRkcmVzcyBpcyBub3QgQXV0aG9yaXplZC4gT25seSAJAAQlAAAAAQUAAAASY29udHJvbGxlcl9hZGRyZXNzAgAAACIgaXMgQXV0aG9yaXplZCBBZGRyZXNzIHRvIFNpZ24gaXQuCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABZWb3RpbmdfU3RhcnRfVGltZVN0YW1wBQAAAAdTdGFydFRTCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABRWb3RpbmdfRW5kX1RpbWVTdGFtcAUAAAAFRW5kVFMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAGFRvdGFsX1Rva2Vuc19EaXN0cmlidXRlZAUAAAAXVG90YWxfRGlzdHJidXRlZF9Ub2tlbnMFAAAAA25pbAAAAAFpAQAAAAdPcHRpb24xAAAAAAQAAAAHVm90ZUFzdAIAAAAHT1BUSU9OMQQAAAAHU3RhcnRUUwkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwIAAAAWVm90aW5nX1N0YXJ0X1RpbWVTdGFtcAQAAAAFRW5kVFMJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAFFZvdGluZ19FbmRfVGltZVN0YW1wBAAAAAZw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", "height": 2488436, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 8tNuu3QdenXanEmqb62MoLvwwJTeAJyuUkSqw666ckd9 Next: HjjTapAPSdVP5AaLCN9jhzCDAqNbsmxEig6PiwxKHybS Diff:
OldNewDifferences
8989 then throw(asseterr)
9090 else if ((pmt.amount != 1))
9191 then throw(minamterr)
92- else if ((lastBlock.timestamp > EndTS))
93- then throw(voteErr)
94- else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
92+ else if ((User_total_Votes > 1))
93+ then throw(AlreadyVotedErr)
94+ else if ((lastBlock.timestamp > EndTS))
95+ then throw(voteErr)
96+ else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
97+ }
98+
99+
100+
101+@Callable(i)
102+func Option2 () = {
103+ let VoteAst = "OPTION2"
104+ let StartTS = getIntegerValue(this, "Voting_Start_TimeStamp")
105+ let EndTS = getIntegerValue(this, "Voting_End_TimeStamp")
106+ let pubkey = toBase58String(i.caller.bytes)
107+ let pmt = if ((size(i.payments) == 1))
108+ then i.payments[0]
109+ else throw(pymterror)
110+ let assetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), VOTE)
111+ let Previous_User_total_Votes = match getInteger(this, ("User_Total_Votes_" + pubkey)) {
112+ case a: Int =>
113+ a
114+ case _ =>
115+ 0
116+ }
117+ let User_total_Votes = (Previous_User_total_Votes + 1)
118+ let UWVFA = match getInteger(this, ((("User_Total_Votes_" + pubkey) + "-") + VoteAst)) {
119+ case a: Int =>
120+ a
121+ case _ =>
122+ 0
123+ }
124+ let UTWVFA = (UWVFA + 1)
125+ let FUVFA = match getInteger(this, ((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst)) {
126+ case a: Int =>
127+ a
128+ case _ =>
129+ 0
130+ }
131+ let UTVFA = (FUVFA + 1)
132+ let FTVO = match getInteger(this, ("Total_Votes_" + VoteAst)) {
133+ case a: Int =>
134+ a
135+ case _ =>
136+ 0
137+ }
138+ let ATVO = (FTVO + 1)
139+ if ((StartTS > lastBlock.timestamp))
140+ then throw((launch_error + toString(StartTS)))
141+ else if ((1 > assetbal))
142+ then throw(minbalerror)
143+ else if ((pmt.assetId != VOTE))
144+ then throw(asseterr)
145+ else if ((pmt.amount != 1))
146+ then throw(minamterr)
147+ else if ((User_total_Votes > 1))
148+ then throw(AlreadyVotedErr)
149+ else if ((lastBlock.timestamp > EndTS))
150+ then throw(voteErr)
151+ else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
152+ }
153+
154+
155+
156+@Callable(i)
157+func Option3 () = {
158+ let VoteAst = "OPTION3"
159+ let StartTS = getIntegerValue(this, "Voting_Start_TimeStamp")
160+ let EndTS = getIntegerValue(this, "Voting_End_TimeStamp")
161+ let pubkey = toBase58String(i.caller.bytes)
162+ let pmt = if ((size(i.payments) == 1))
163+ then i.payments[0]
164+ else throw(pymterror)
165+ let assetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), VOTE)
166+ let Previous_User_total_Votes = match getInteger(this, ("User_Total_Votes_" + pubkey)) {
167+ case a: Int =>
168+ a
169+ case _ =>
170+ 0
171+ }
172+ let User_total_Votes = (Previous_User_total_Votes + 1)
173+ let UWVFA = match getInteger(this, ((("User_Total_Votes_" + pubkey) + "-") + VoteAst)) {
174+ case a: Int =>
175+ a
176+ case _ =>
177+ 0
178+ }
179+ let UTWVFA = (UWVFA + 1)
180+ let FUVFA = match getInteger(this, ((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst)) {
181+ case a: Int =>
182+ a
183+ case _ =>
184+ 0
185+ }
186+ let UTVFA = (FUVFA + 1)
187+ let FTVO = match getInteger(this, ("Total_Votes_" + VoteAst)) {
188+ case a: Int =>
189+ a
190+ case _ =>
191+ 0
192+ }
193+ let ATVO = (FTVO + 1)
194+ if ((StartTS > lastBlock.timestamp))
195+ then throw((launch_error + toString(StartTS)))
196+ else if ((1 > assetbal))
197+ then throw(minbalerror)
198+ else if ((pmt.assetId != VOTE))
199+ then throw(asseterr)
200+ else if ((pmt.amount != 1))
201+ then throw(minamterr)
202+ else if ((User_total_Votes > 1))
203+ then throw(AlreadyVotedErr)
204+ else if ((lastBlock.timestamp > EndTS))
205+ then throw(voteErr)
206+ else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
95207 }
96208
97209
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let VOTE = base58'Zn3cLHW7aAVPm5aACcTjvg7e7iEy2cKDtbowok5qa9H'
55
66 let voting_timestamp_controller_pubkey = base58'2sHRUrJCMpDhAQEcN7Zhk3LqnD9zizebpxeQXpPoscQU'
77
88 let controller_address = addressFromPublicKey(voting_timestamp_controller_pubkey)
99
1010 let launch_error = "Dapp will start Voting at Timestamp "
1111
1212 let msg = "<h1>You Vote Submitted Successfully!</h1><br>"
1313
1414 let pymterror = "DApp Need 1 VOTE Token as Attach payment[1]."
1515
1616 let minbalerror = "Min. 1 VOTE required on Your Address to Vote. Please Mint or hold min. 1 VOTE on this Address."
1717
1818 let asseterr = (("Incorrect asset attach, please attach " + toBase58String(VOTE)) + " AssetID Only.")
1919
2020 let minamterr = "Please Attach Exact 1 VOTE To Vote."
2121
2222 let voteErr = "Voting is Over for this Dapp."
2323
2424 let AlreadyVotedErr = "You have Already Voted from this address."
2525
2626 let Previoustotalvotes = match getInteger(this, "Total_Votes") {
2727 case a: Int =>
2828 a
2929 case _ =>
3030 0
3131 }
3232
3333 let totalvotes = (Previoustotalvotes + 1)
3434
3535 @Callable(i)
3636 func SetVotingTimeStamps (Voting_Start_TimeStamp,Voting_End_TimeStamp,Total_Distrbuted_Tokens) = {
3737 let StartTS = Voting_Start_TimeStamp
3838 let EndTS = Voting_End_TimeStamp
3939 if ((i.caller != controller_address))
4040 then throw((("This Address is not Authorized. Only " + toString(controller_address)) + " is Authorized Address to Sign it."))
4141 else [IntegerEntry("Voting_Start_TimeStamp", StartTS), IntegerEntry("Voting_End_TimeStamp", EndTS), IntegerEntry("Total_Tokens_Distributed", Total_Distrbuted_Tokens)]
4242 }
4343
4444
4545
4646 @Callable(i)
4747 func Option1 () = {
4848 let VoteAst = "OPTION1"
4949 let StartTS = getIntegerValue(this, "Voting_Start_TimeStamp")
5050 let EndTS = getIntegerValue(this, "Voting_End_TimeStamp")
5151 let pubkey = toBase58String(i.caller.bytes)
5252 let pmt = if ((size(i.payments) == 1))
5353 then i.payments[0]
5454 else throw(pymterror)
5555 let assetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), VOTE)
5656 let Previous_User_total_Votes = match getInteger(this, ("User_Total_Votes_" + pubkey)) {
5757 case a: Int =>
5858 a
5959 case _ =>
6060 0
6161 }
6262 let User_total_Votes = (Previous_User_total_Votes + 1)
6363 let UWVFA = match getInteger(this, ((("User_Total_Votes_" + pubkey) + "-") + VoteAst)) {
6464 case a: Int =>
6565 a
6666 case _ =>
6767 0
6868 }
6969 let UTWVFA = (UWVFA + 1)
7070 let FUVFA = match getInteger(this, ((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst)) {
7171 case a: Int =>
7272 a
7373 case _ =>
7474 0
7575 }
7676 let UTVFA = (FUVFA + 1)
7777 let FTVO = match getInteger(this, ("Total_Votes_" + VoteAst)) {
7878 case a: Int =>
7979 a
8080 case _ =>
8181 0
8282 }
8383 let ATVO = (FTVO + 1)
8484 if ((StartTS > lastBlock.timestamp))
8585 then throw((launch_error + toString(StartTS)))
8686 else if ((1 > assetbal))
8787 then throw(minbalerror)
8888 else if ((pmt.assetId != VOTE))
8989 then throw(asseterr)
9090 else if ((pmt.amount != 1))
9191 then throw(minamterr)
92- else if ((lastBlock.timestamp > EndTS))
93- then throw(voteErr)
94- else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
92+ else if ((User_total_Votes > 1))
93+ then throw(AlreadyVotedErr)
94+ else if ((lastBlock.timestamp > EndTS))
95+ then throw(voteErr)
96+ else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
97+ }
98+
99+
100+
101+@Callable(i)
102+func Option2 () = {
103+ let VoteAst = "OPTION2"
104+ let StartTS = getIntegerValue(this, "Voting_Start_TimeStamp")
105+ let EndTS = getIntegerValue(this, "Voting_End_TimeStamp")
106+ let pubkey = toBase58String(i.caller.bytes)
107+ let pmt = if ((size(i.payments) == 1))
108+ then i.payments[0]
109+ else throw(pymterror)
110+ let assetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), VOTE)
111+ let Previous_User_total_Votes = match getInteger(this, ("User_Total_Votes_" + pubkey)) {
112+ case a: Int =>
113+ a
114+ case _ =>
115+ 0
116+ }
117+ let User_total_Votes = (Previous_User_total_Votes + 1)
118+ let UWVFA = match getInteger(this, ((("User_Total_Votes_" + pubkey) + "-") + VoteAst)) {
119+ case a: Int =>
120+ a
121+ case _ =>
122+ 0
123+ }
124+ let UTWVFA = (UWVFA + 1)
125+ let FUVFA = match getInteger(this, ((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst)) {
126+ case a: Int =>
127+ a
128+ case _ =>
129+ 0
130+ }
131+ let UTVFA = (FUVFA + 1)
132+ let FTVO = match getInteger(this, ("Total_Votes_" + VoteAst)) {
133+ case a: Int =>
134+ a
135+ case _ =>
136+ 0
137+ }
138+ let ATVO = (FTVO + 1)
139+ if ((StartTS > lastBlock.timestamp))
140+ then throw((launch_error + toString(StartTS)))
141+ else if ((1 > assetbal))
142+ then throw(minbalerror)
143+ else if ((pmt.assetId != VOTE))
144+ then throw(asseterr)
145+ else if ((pmt.amount != 1))
146+ then throw(minamterr)
147+ else if ((User_total_Votes > 1))
148+ then throw(AlreadyVotedErr)
149+ else if ((lastBlock.timestamp > EndTS))
150+ then throw(voteErr)
151+ else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
152+ }
153+
154+
155+
156+@Callable(i)
157+func Option3 () = {
158+ let VoteAst = "OPTION3"
159+ let StartTS = getIntegerValue(this, "Voting_Start_TimeStamp")
160+ let EndTS = getIntegerValue(this, "Voting_End_TimeStamp")
161+ let pubkey = toBase58String(i.caller.bytes)
162+ let pmt = if ((size(i.payments) == 1))
163+ then i.payments[0]
164+ else throw(pymterror)
165+ let assetbal = assetBalance(addressFromPublicKey(i.callerPublicKey), VOTE)
166+ let Previous_User_total_Votes = match getInteger(this, ("User_Total_Votes_" + pubkey)) {
167+ case a: Int =>
168+ a
169+ case _ =>
170+ 0
171+ }
172+ let User_total_Votes = (Previous_User_total_Votes + 1)
173+ let UWVFA = match getInteger(this, ((("User_Total_Votes_" + pubkey) + "-") + VoteAst)) {
174+ case a: Int =>
175+ a
176+ case _ =>
177+ 0
178+ }
179+ let UTWVFA = (UWVFA + 1)
180+ let FUVFA = match getInteger(this, ((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst)) {
181+ case a: Int =>
182+ a
183+ case _ =>
184+ 0
185+ }
186+ let UTVFA = (FUVFA + 1)
187+ let FTVO = match getInteger(this, ("Total_Votes_" + VoteAst)) {
188+ case a: Int =>
189+ a
190+ case _ =>
191+ 0
192+ }
193+ let ATVO = (FTVO + 1)
194+ if ((StartTS > lastBlock.timestamp))
195+ then throw((launch_error + toString(StartTS)))
196+ else if ((1 > assetbal))
197+ then throw(minbalerror)
198+ else if ((pmt.assetId != VOTE))
199+ then throw(asseterr)
200+ else if ((pmt.amount != 1))
201+ then throw(minamterr)
202+ else if ((User_total_Votes > 1))
203+ then throw(AlreadyVotedErr)
204+ else if ((lastBlock.timestamp > EndTS))
205+ then throw(voteErr)
206+ else [IntegerEntry("Total_Votes", totalvotes), IntegerEntry(("Total_Votes_" + VoteAst), ATVO), IntegerEntry(("User_Total_Votes_" + pubkey), User_total_Votes), IntegerEntry(((("User_Total_Votes_" + pubkey) + "-") + VoteAst), UTWVFA), IntegerEntry(((("User_Total_Asset_Votes_" + pubkey) + "_") + VoteAst), UTVFA), StringEntry("message", msg)]
95207 }
96208
97209
98210 @Verifier(tx)
99211 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
100212

github/deemru/w8io/169f3d6 
66.03 ms