tx · GiA6K9sRmpdJx7rUEtTbw3gRrjHi2BbJRnvadgN1HKmb

3MzGHDJgHnpSnBYScnzg93pWoS27M7cBuVT:  -0.01000000 Waves

2020.12.07 14:29 [1298173] smart account 3MzGHDJgHnpSnBYScnzg93pWoS27M7cBuVT > SELF 0.00000000 Waves

{ "type": 13, "id": "GiA6K9sRmpdJx7rUEtTbw3gRrjHi2BbJRnvadgN1HKmb", "fee": 1000000, "feeAssetId": null, "timestamp": 1607340617346, "version": 2, "chainId": 84, "sender": "3MzGHDJgHnpSnBYScnzg93pWoS27M7cBuVT", "senderPublicKey": "EEG3yJvW1pyCtw138vRpByPpVgrN9VUW9X7G3b9qnwAU", "proofs": [ "42YVBZtfJH68ihrvXTHrVTNjqZRK9RtgqfHYYSHG4HHXppEmvMaFHYU3VNGr7jZev2mk652xjVd7JNyjo2R42z9b" ], "script": "base64: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CAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAFVVzZXJTdGFrZVRyYW5zYWN0aW9ucwQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAABhVc2VyU3Rha2VUcmFuc2FjdGlvbnNLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAYTmV3VXNlclN0YWtlVHJhbnNhY3Rpb25zCQAAZAAAAAIFAAAAFVVzZXJTdGFrZVRyYW5zYWN0aW9ucwAAAAAAAAAAAQQAAAAYY3VycmVudEFtb3VudFN0YWtlZFRva2VuBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAElVzZXJTdGFrZWRUb2tlbktleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABRuZXdBbW91bnRTdGFrZWRUb2tlbgkAAGQAAAACBQAAABhjdXJyZW50QW1vdW50U3Rha2VkVG9rZW4IBQAAAANwbXQAAAAGYW1vdW50BAAAABhjdXJyZW50QW1vdW50R292ZXJuVG9rZW4EAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAASVXNlclN0YWtlZFRva2VuS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAFG5ld0Ftb3VudEdvdmVyblRva2VuCQAAZAAAAAIFAAAAGGN1cnJlbnRBbW91bnRHb3Zlcm5Ub2tlbgAAAAAAAAAACgQAAAAfR292ZXJuVG9rZW5TbWFydENvbnRyYWN0QmFsYW5jZQkAA+sAAAACBQAAAAR0aGlzBQAAAAtHb3Zlcm5Ub2tlbgQAAAAfU3Rha2VkVG9rZW5TbWFydENvbnRyYWN0QmFsYW5jZQkAA+sAAAACBQAAAAR0aGlzBQAAAAtTdGFrZWRUb2tlbgMJAABmAAAAAgAAAAAAAAAAAQUAAAAfR292ZXJuVG9rZW5TbWFydENvbnRyYWN0QmFsYW5jZQkAAAIAAAABAgAAAD5ObyBlbm91Z2ggR292ZXJuVG9rZW4gSW4gQ29udHJhY3QsIFBsZWFzZSBkZXBvc2l0IEdvdmVyblRva2VucwMJAAAAAAAAAgUAAAAfU3Rha2VkVG9rZW5TbWFydENvbnRyYWN0QmFsYW5jZQAAAAAAAAAAAAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAElVzZXJHb3Zlcm5Ub2tlbktleQUAAAAUbmV3QW1vdW50R292ZXJuVG9rZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAElVzZXJTdGFrZWRUb2tlbktleQUAAAAUbmV3QW1vdW50U3Rha2VkVG9rZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAGFVzZXJTdGFrZVRyYW5zYWN0aW9uc0tleQUAAAAYTmV3VXNlclN0YWtlVHJhbnNhY3Rpb25zBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyAAAAAAAAAAAKBQAAAAtHb3Zlcm5Ub2tlbgUAAAADbmlsAwkAAGYAAAACBQAAABhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMAAAAAAAAAADIEAAAABlJld2FyZAkAAGQAAAACBQAAABhjdXJyZW50QW1vdW50R292ZXJuVG9rZW4JAABoAAAAAgkAAGgAAAACAAAAAAAAAAAKBQAAABhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMJAABpAAAAAgUAAAAUbmV3QW1vdW50U3Rha2VkVG9rZW4FAAAAH1N0YWtlZFRva2VuU21hcnRDb250cmFjdEJhbGFuY2UJAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABJVc2VyR292ZXJuVG9rZW5LZXkFAAAABlJld2FyZAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASVXNlclN0YWtlZFRva2VuS2V5BQAAABRuZXdBbW91bnRTdGFrZWRUb2tlbgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAYVXNlclN0YWtlVHJhbnNhY3Rpb25zS2V5BQAAABhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAABlJld2FyZAUAAAALR292ZXJuVG9rZW4FAAAAA25pbAQAAAAGUmV3YXJkCQAAZAAAAAIFAAAAGGN1cnJlbnRBbW91bnRHb3Zlcm5Ub2tlbgkAAGgAAAACAAAAAAAAAAAKCQAAaQAAAAIFAAAAFG5ld0Ftb3VudFN0YWtlZFRva2VuBQAAAB9TdGFrZWRUb2tlblNtYXJ0Q29udHJhY3RCYWxhbmNlCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAASVXNlckdvdmVyblRva2VuS2V5BQAAAAZSZXdhcmQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAElVzZXJTdGFrZWRUb2tlbktleQUAAAAUbmV3QW1vdW50U3Rha2VkVG9rZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAGFVzZXJTdGFrZVRyYW5zYWN0aW9uc0tleQUAAAAYTmV3VXNlclN0YWtlVHJhbnNhY3Rpb25zBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAZSZXdhcmQFAAAAC0dvdmVyblRva2VuBQAAAANuaWwJAAACAAAAAQIAAAAbQ2FuIGRlcG9zaXQgb25seSBTdGFrZVRva2VuAAAAAWkBAAAAEkRlcG9zaXRHb3Zlcm5Ub2tlbgAAAAAEAAAAC0dvdmVyblRva2VuAQAAACDLa5u6ROf+j76WCSQmeFWDp26HaYeq7IveYxvygYrF+AQAAAAVR292ZXJuVG9rZW5NYXhEZXBvc2l0CQACWAAAAAEFAAAAC0dvdmVyblRva2VuBAAAAANwbXQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAMDCQEAAAAJaXNEZWZpbmVkAAAAAQgFAAAAA3BtdAAAAAdhc3NldElkCQAAAAAAAAIJAQAAAAdleHRyYWN0AAAAAQgFAAAAA3BtdAAAAAdhc3NldElkBQAAAAtHb3Zlcm5Ub2tlbgcEAAAACmN1cnJlbnRLZXkJAAEsAAAAAgkAASwAAAACCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMCAAAAAV8JAAJYAAAAAQUAAAALR292ZXJuVG9rZW4EAAAADWN1cnJlbnRBbW91bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAAKY3VycmVudEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABpDdXJycmVudEdvdmVyblRva2VuRGVwb3NpdAkAAGQAAAACBQAAAA1jdXJyZW50QW1vdW50CAUAAAADcG10AAAABmFtb3VudAQAAAAOR292ZXJuVG9rZW5LZXkCAAAAFUdvdmVyblRva2VuTWF4RGVwb3NpdAQAAAAaTWF4R292ZXJuVG9rZW5EZXBvc2l0ZXJLZXkCAAAAGk1heEdvdmVyblRva2VuRGVwb3NpdGVyS2V5BAAAABVNYXhHb3Zlcm5Ub2tlbkRlcG9zaXQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAAOR292ZXJuVG9rZW5LZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAMJAABmAAAAAgUAAAAaQ3VycnJlbnRHb3Zlcm5Ub2tlbkRlcG9zaXQFAAAAFU1heEdvdmVyblRva2VuRGVwb3NpdAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAKY3VycmVudEtleQUAAAAaQ3VycnJlbnRHb3Zlcm5Ub2tlbkRlcG9zaXQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAADkdvdmVyblRva2VuS2V5BQAAABpDdXJycmVudEdvdmVyblRva2VuRGVwb3NpdAkABEwAAAACCQEAAAAJRGF0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", "height": 1298173, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: DbGBbr6t9q3B4f1ca8TzNjRLr9KXgV3jgLiZeqL2Kg4n Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+
5+
6+@Callable(i)
7+func ReadPoolData () = {
8+ let GovernTokenKey = "GovernTokenMaxDeposit"
9+ let MaxGovernTokenDepositerKey = "MaxGovernTokenDepositerKey"
10+ let StakedToken = base58'AbwrDfhBTCFySqCzhwcC6CaXTNKC7tFq5nx1cVUxqT2w'
11+ let GovernToken = base58'Eh4w4BjT7Qn51eXFV9tLzymsepCo8oPLxBRBg5aog98j'
12+ let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
13+ let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
14+ let Winner = getStringValue(this, MaxGovernTokenDepositerKey)
15+ let MaxGovernTokenDeposit = match getInteger(this, GovernTokenKey) {
16+ case a: Int =>
17+ a
18+ case _ =>
19+ 0
20+ }
21+ let ReadUserGovernTokenKey = getStringValue(this, UserGovernTokenKey)
22+ let UserGovernTokenBalance = match getInteger(this, UserGovernTokenKey) {
23+ case a: Int =>
24+ a
25+ case _ =>
26+ 0
27+ }
28+ let ReadUserStakedTokenKey = getStringValue(this, UserStakedTokenKey)
29+ let UserStakedTokenBalance = match getInteger(this, UserStakedTokenKey) {
30+ case a: Int =>
31+ a
32+ case _ =>
33+ 0
34+ }
35+ throw(((((((("Winner is.....: " + Winner) + " Balance is: ") + toString(MaxGovernTokenDeposit)) + "
36+Staked Token in your Balance is.....: ") + toString(UserStakedTokenBalance)) + "
37+Govern Token in your Balance is.....: ") + toString(UserGovernTokenBalance)))
38+ }
39+
40+
41+
42+@Callable(i)
43+func ResetAccount () = {
44+ let StakedToken = base58'AbwrDfhBTCFySqCzhwcC6CaXTNKC7tFq5nx1cVUxqT2w'
45+ let GovernToken = base58'Eh4w4BjT7Qn51eXFV9tLzymsepCo8oPLxBRBg5aog98j'
46+ let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
47+ let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
48+ let UserStakeTransactionsKey = (toBase58String(i.caller.bytes) + "_StakedTransactions")
49+ WriteSet([DataEntry(UserGovernTokenKey, 0), DataEntry(UserStakedTokenKey, 0), DataEntry(UserStakeTransactionsKey, 0)])
50+ }
51+
52+
53+
54+@Callable(i)
55+func Stake () = {
56+ let StakedToken = base58'AbwrDfhBTCFySqCzhwcC6CaXTNKC7tFq5nx1cVUxqT2w'
57+ let GovernToken = base58'Eh4w4BjT7Qn51eXFV9tLzymsepCo8oPLxBRBg5aog98j'
58+ let pmt = extract(i.payment)
59+ if (if (isDefined(pmt.assetId))
60+ then (extract(pmt.assetId) == StakedToken)
61+ else false)
62+ then {
63+ let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
64+ let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
65+ let UserStakeTransactionsKey = (toBase58String(i.caller.bytes) + "_StakedTransactions")
66+ let UserKey = toBase58String(i.caller.bytes)
67+ let UserStakeTransactions = match getInteger(this, UserStakeTransactionsKey) {
68+ case a: Int =>
69+ a
70+ case _ =>
71+ 0
72+ }
73+ let NewUserStakeTransactions = (UserStakeTransactions + 1)
74+ let currentAmountStakedToken = match getInteger(this, UserStakedTokenKey) {
75+ case a: Int =>
76+ a
77+ case _ =>
78+ 0
79+ }
80+ let newAmountStakedToken = (currentAmountStakedToken + pmt.amount)
81+ let currentAmountGovernToken = match getInteger(this, UserStakedTokenKey) {
82+ case a: Int =>
83+ a
84+ case _ =>
85+ 0
86+ }
87+ let newAmountGovernToken = (currentAmountGovernToken + 10)
88+ let GovernTokenSmartContractBalance = assetBalance(this, GovernToken)
89+ let StakedTokenSmartContractBalance = assetBalance(this, StakedToken)
90+ if ((1 > GovernTokenSmartContractBalance))
91+ then throw("No enough GovernToken In Contract, Please deposit GovernTokens")
92+ else if ((StakedTokenSmartContractBalance == 0))
93+ then ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, newAmountGovernToken), DataEntry(UserStakedTokenKey, newAmountStakedToken), DataEntry(UserStakeTransactionsKey, NewUserStakeTransactions)]), TransferSet([ScriptTransfer(i.caller, 10, GovernToken)]))
94+ else if ((NewUserStakeTransactions > 50))
95+ then {
96+ let Reward = (currentAmountGovernToken + ((10 * NewUserStakeTransactions) * (newAmountStakedToken / StakedTokenSmartContractBalance)))
97+ ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, Reward), DataEntry(UserStakedTokenKey, newAmountStakedToken), DataEntry(UserStakeTransactionsKey, NewUserStakeTransactions)]), TransferSet([ScriptTransfer(i.caller, Reward, GovernToken)]))
98+ }
99+ else {
100+ let Reward = (currentAmountGovernToken + (10 * (newAmountStakedToken / StakedTokenSmartContractBalance)))
101+ ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, Reward), DataEntry(UserStakedTokenKey, newAmountStakedToken), DataEntry(UserStakeTransactionsKey, NewUserStakeTransactions)]), TransferSet([ScriptTransfer(i.caller, Reward, GovernToken)]))
102+ }
103+ }
104+ else throw("Can deposit only StakeToken")
105+ }
106+
107+
108+
109+@Callable(i)
110+func DepositGovernToken () = {
111+ let GovernToken = base58'Eh4w4BjT7Qn51eXFV9tLzymsepCo8oPLxBRBg5aog98j'
112+ let GovernTokenMaxDeposit = toBase58String(GovernToken)
113+ let pmt = extract(i.payment)
114+ if (if (isDefined(pmt.assetId))
115+ then (extract(pmt.assetId) == GovernToken)
116+ else false)
117+ then {
118+ let currentKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
119+ let currentAmount = match getInteger(this, currentKey) {
120+ case a: Int =>
121+ a
122+ case _ =>
123+ 0
124+ }
125+ let CurrrentGovernTokenDeposit = (currentAmount + pmt.amount)
126+ let GovernTokenKey = "GovernTokenMaxDeposit"
127+ let MaxGovernTokenDepositerKey = "MaxGovernTokenDepositerKey"
128+ let MaxGovernTokenDeposit = match getInteger(this, GovernTokenKey) {
129+ case a: Int =>
130+ a
131+ case _ =>
132+ 0
133+ }
134+ if ((CurrrentGovernTokenDeposit > MaxGovernTokenDeposit))
135+ then WriteSet([DataEntry(currentKey, CurrrentGovernTokenDeposit), DataEntry(GovernTokenKey, CurrrentGovernTokenDeposit), DataEntry(MaxGovernTokenDepositerKey, currentKey)])
136+ else WriteSet([DataEntry(currentKey, CurrrentGovernTokenDeposit)])
137+ }
138+ else throw("Can deposit only Govern Token")
139+ }
140+
141+
142+
143+@Callable(i)
144+func WithdrawStakedFunds (amount) = {
145+ let StakedToken = base58'AbwrDfhBTCFySqCzhwcC6CaXTNKC7tFq5nx1cVUxqT2w'
146+ let GovernToken = base58'Eh4w4BjT7Qn51eXFV9tLzymsepCo8oPLxBRBg5aog98j'
147+ let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
148+ let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
149+ let currentKey = toBase58String(i.caller.bytes)
150+ let currentAmount = match getInteger(this, UserStakedTokenKey) {
151+ case a: Int =>
152+ a
153+ case _ =>
154+ 0
155+ }
156+ let newAmount = (currentAmount - amount)
157+ if ((0 > amount))
158+ then throw("Can't withdraw negative amount")
159+ else if ((0 > newAmount))
160+ then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString(currentAmount)))
161+ else {
162+ let GovernTokenAmount = assetBalance(this, GovernToken)
163+ if ((1 > GovernTokenAmount))
164+ then throw("No enough GovernToken In Contract")
165+ else ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, 1), DataEntry(UserStakedTokenKey, newAmount)]), TransferSet([ScriptTransfer(i.caller, 1, GovernToken), ScriptTransfer(i.caller, amount, StakedToken)]))
166+ }
167+ }
168+
169+
170+
171+@Callable(i)
172+func ClaimPrize () = {
173+ let StakedToken = base58'AbwrDfhBTCFySqCzhwcC6CaXTNKC7tFq5nx1cVUxqT2w'
174+ let GovernToken = base58'Eh4w4BjT7Qn51eXFV9tLzymsepCo8oPLxBRBg5aog98j'
175+ let FundBoxAddress58 = base58'3MsH5Hr1qQYUnwq4HTpiaGpXQi6cGPUsa5n'
176+ let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
177+ let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
178+ let FundBoxStakedToken = ((toBase58String(FundBoxAddress58) + "_") + toBase58String(StakedToken))
179+ let UserGovernTokenAmount = match getInteger(this, UserGovernTokenKey) {
180+ case a: Int =>
181+ a
182+ case _ =>
183+ 0
184+ }
185+ let UserStakedTokenAmount = match getInteger(this, UserStakedTokenKey) {
186+ case a: Int =>
187+ a
188+ case _ =>
189+ 0
190+ }
191+ let PrizeAmount = match getInteger(this, FundBoxStakedToken) {
192+ case a: Int =>
193+ a
194+ case _ =>
195+ 0
196+ }
197+ let GovernTokenKey = "GovernTokenMaxDeposit"
198+ let MaxGovernTokenDepositerKey = "MaxGovernTokenDepositerKey"
199+ let PrizeWinner = getStringValue(this, MaxGovernTokenDepositerKey)
200+ if ((PrizeAmount == 0))
201+ then throw("No prize to Claim")
202+ else if ((UserGovernTokenKey != PrizeWinner))
203+ then throw("You are not the winner hence cannot claim the reward ")
204+ else if ((1 > UserStakedTokenAmount))
205+ then throw(("You have to Stake StakedToken to claim reward
206+ Your Balance of Staked Tokens is: " + toString(UserStakedTokenAmount)))
207+ else if ((UserGovernTokenAmount > 100))
208+ then ScriptResult(WriteSet([DataEntry(PrizeWinner, PrizeAmount), DataEntry(FundBoxStakedToken, 0), DataEntry(GovernTokenKey, 0), DataEntry(UserGovernTokenKey, 0), DataEntry(MaxGovernTokenDepositerKey, "")]), TransferSet([ScriptTransfer(i.caller, PrizeAmount, StakedToken), ScriptTransfer(i.caller, 100, GovernToken)]))
209+ else throw(("You have to deposit 100 GovernToken to claim Reward
210+ Your Balance is: " + toString(UserGovernTokenAmount)))
211+ }
212+
213+

github/deemru/w8io/169f3d6 
37.35 ms