tx · 6a5NtWnDCEf9gPfgjvdrtq79vzgm4dhTptC12oi2iMTy

3N4K6JFDDdcd1qrk2HszwHQrMqznvhYBgjn:  -0.01000000 Waves

2023.08.07 14:17 [2700102] smart account 3N4K6JFDDdcd1qrk2HszwHQrMqznvhYBgjn > SELF 0.00000000 Waves

{ "type": 13, "id": "6a5NtWnDCEf9gPfgjvdrtq79vzgm4dhTptC12oi2iMTy", "fee": 1000000, "feeAssetId": null, "timestamp": 1691407137152, "version": 2, "chainId": 84, "sender": "3N4K6JFDDdcd1qrk2HszwHQrMqznvhYBgjn", "senderPublicKey": "9vxW4kEGgMt47hfP42SnhhMRhEVqbedX6N57xB8XKYcV", "proofs": [ "4eDiEhJFt8bTpbbDr6xfkpGVyVi6RCQhQgcp2SEKfC7VKaJNoEWUSReLfQmmBJJUpWoLj8z4ektc6Pdn8FzGVKCJ" ], "script": "base64:AAIFAAAAAAAAABQIAhIDCgEIEgMKAQgSBgoECAgICAAAAAAAAAADAAAAAWkBAAAAGHJlZ2lzdGVyX3BvbHlnb25fYWRkcmVzcwAAAAEAAAAPUG9seWdvbl9BZGRyZXNzBAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAEmZldGNoX3ByZV9yZWdpc3RlcgkABB0AAAACBQAAAAR0aGlzBQAAAApjdXJyZW50S2V5BAAAABRyZWFkX2ZpcnN0X3R3b19jaGFycwkAAS8AAAACBQAAAA9Qb2x5Z29uX0FkZHJlc3MAAAAAAAAAAAIEAAAAFWVuc3VyZV9hZGRyZXNzX3ByZWZpeAIAAAACMHgDCQEAAAACIT0AAAACCQABMQAAAAEFAAAAD1BvbHlnb25fQWRkcmVzcwAAAAAAAAAAKgkAAAIAAAABAgAAAHlFbnRlcmVkIEFkZHJlc3MgbGVuZ3RoIGlzIFdyb25nLCBBZGRyZXNzIGxlbmd0aCBzaG91bGQgYmUgNDIgY2hhcnMuIFBsZWFzZSBFbnRlciBhIHZhbGlkIFBvbHlnb24gQWRkcmVzcyBzdGFydHMgd2l0aCAnMHgnAwkBAAAAAiE9AAAAAgUAAAAUcmVhZF9maXJzdF90d29fY2hhcnMFAAAAFWVuc3VyZV9hZGRyZXNzX3ByZWZpeAkAAAIAAAABAgAAADJXcm9uZyBQb2x5Z29uIEFkZHJlc3MsIFByZWZpeCBtdXN0IHN0YXJ0IHdpdGggJzB4JwMJAAAAAAAAAgUAAAASZmV0Y2hfcHJlX3JlZ2lzdGVyBQAAAA9Qb2x5Z29uX0FkZHJlc3MJAAACAAAAAQIAAAAiUGFpciBBbHJlYWR5IEV4aXN0IGluIFZvdGluZyBMaXN0LgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAApjdXJyZW50S2V5BQAAAA9Qb2x5Z29uX0FkZHJlc3MFAAAAA25pbAAAAAFpAQAAABlwb3N0X2luY29taW5nX3BvbHlnb25fdHhuAAAAAQAAAAxJbmNvbWluZ19UeG4EAAAAEnNwbGl0X2luY29taW5nX3R4bgkABLUAAAACBQAAAAxJbmNvbWluZ19UeG4CAAAAAV8EAAAAFGdldF9pbmNvbWluZ19hZGRyZXNzCQABkQAAAAIFAAAAEnNwbGl0X2luY29taW5nX3R4bgAAAAAAAAAAAAQAAAARZ2V0X2luY29taW5nX2hhc2gJAAGRAAAAAgUAAAASc3BsaXRfaW5jb21pbmdfdHhuAAAAAAAAAAABBAAAABNnZXRfaW5jb21pbmdfYW1vdW50CQABkQAAAAIFAAAAEnNwbGl0X2luY29taW5nX3R4bgAAAAAAAAAAAgQAAAAcY2hlY2tfdXNlcl9yZWdpc3RlcmRfYWRkcmVzcwkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwUAAAAUZ2V0X2luY29taW5nX2FkZHJlc3MEAAAAEXJlYWRfaW5jb21pbmdfdHhuBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAE1RvdGFsX0luY29taW5nX1R4bnMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAASdG90YWxfaW5jb21pbmdfdHhuCQAAZAAAAAIFAAAAEXJlYWRfaW5jb21pbmdfdHhuAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABNUb3RhbF9JbmNvbWluZ19UeG5zBQAAABJ0b3RhbF9pbmNvbWluZ190eG4JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEWdldF9pbmNvbWluZ19oYXNoCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEFAAAAE2dldF9pbmNvbWluZ19hbW91bnQFAAAAA25pbAAAAAFpAQAAAAZEZWxldGUAAAAEAAAAA0tleQAAAARLZXkxAAAABEtleTIAAAAES2V5MwkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABBQAAAANLZXkJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQUAAAAES2V5MQkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABBQAAAARLZXkyCQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEFAAAABEtleTMFAAAAA25pbAAAAACZqLVX", "height": 2700102, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2WUzwuh9SVtxFi4obAexyDYzCLrfNFPptzW42qHkGSaS Next: 5pMqiojSuTVzz6Bdin9ttwTdxNeGHPW3XxrJ9abMxkdm Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let Dapp_Address_pub_key = base58'BmV3aPhqkjNgu3zD3rx1oaWTnPqgB8uRBQuvYjpYWtTu'
54
6-let product_launch_timestamp = 1675209600000
7-
8-let Currency_ID = "WAVES"
9-
10-let product_launch_error = "Product Launch Timestamp is set at "
11-
12-let no_payment_error = "No payment attached, Please Attach Token in payment[1]."
13-
14-let closed_oracle_eror = "Oracle is closed. Wait Until Oracle is Turned On."
15-
16-let whitelist_address = addressFromPublicKey(Dapp_Address_pub_key)
17-
18-let network_fee = 900000
19-
20-let minimum_order_size = 10000000
21-
22-let maximum_order_size = 10000000000
235
246 @Callable(i)
25-func placeoptionCall (Total_Pool_Liquidity,Amount,OptionCounterID,User_ID,User_Address,House_risk,Price,Call_Limits,Put_Limits,Oracle_Status,Start_Order_Timestamp,End_Order_Timestamp) = {
26- let calleraddress = toBase58String(i.caller.bytes)
27- let ifBlacklisted = getString(this, ("addr_BLACKLISTED_" + User_Address))
28- let read_user_funds = getIntegerValue(((Currency_ID + "_") + User_Address))
29- let update_user_funds = ((read_user_funds - Amount) - network_fee)
30- let read_start_order_permit_timestamp = Start_Order_Timestamp
31- let read_end_order_permit_timestamp = End_Order_Timestamp
32- let read_OptionCounterID = OptionCounterID
33- let OpionExpireCounter = 1
34- let OptionExpireCounterID = (read_OptionCounterID + OpionExpireCounter)
35- let PreviousOptionOrders = match getInteger(this, "Total_Option_Orders") {
7+func register_polygon_address (Polygon_Address) = {
8+ let currentKey = toBase58String(i.caller.bytes)
9+ let fetch_pre_register = getString(this, currentKey)
10+ let read_first_two_chars = take(Polygon_Address, 2)
11+ let ensure_address_prefix = "0x"
12+ if ((size(Polygon_Address) != 42))
13+ then throw("Entered Address length is Wrong, Address length should be 42 chars. Please Enter a valid Polygon Address starts with '0x'")
14+ else if ((read_first_two_chars != ensure_address_prefix))
15+ then throw("Wrong Polygon Address, Prefix must start with '0x'")
16+ else if ((fetch_pre_register == Polygon_Address))
17+ then throw("Pair Already Exist in Voting List.")
18+ else [StringEntry(currentKey, Polygon_Address)]
19+ }
20+
21+
22+
23+@Callable(i)
24+func post_incoming_polygon_txn (Incoming_Txn) = {
25+ let split_incoming_txn = split(Incoming_Txn, "_")
26+ let get_incoming_address = split_incoming_txn[0]
27+ let get_incoming_hash = split_incoming_txn[1]
28+ let get_incoming_amount = split_incoming_txn[2]
29+ let check_user_registerd_address = getStringValue(this, get_incoming_address)
30+ let read_incoming_txn = match getInteger(this, "Total_Incoming_Txns") {
3631 case a: Int =>
3732 a
3833 case _ =>
3934 0
4035 }
41- let TotalOptionOrders = (PreviousOptionOrders + 1)
42- let PreviousFundsAddedInSpecificOptionOrder = match getInteger(this, ("Total_Funds_Added_In_Option_Order_" + toString(read_OptionCounterID))) {
43- case a: Int =>
44- a
45- case _ =>
46- 0
47- }
48- let TotalFundsAddedInSpecificOptionOrder = (PreviousFundsAddedInSpecificOptionOrder + Amount)
49- let PreviousOptionOrdersinSpecificCounter = match getInteger(this, ("Total_Option_Orders_" + toString(read_OptionCounterID))) {
50- case a: Int =>
51- a
52- case _ =>
53- 0
54- }
55- let TotalOptionOrdersinSpecificCounter = (PreviousOptionOrdersinSpecificCounter + 1)
56- let PreviousCall = match getInteger(this, "Total_Calls") {
57- case a: Int =>
58- a
59- case _ =>
60- 0
61- }
62- let TotalCall = (PreviousCall + 1)
63- let PreviousCallinSpecificCounter = match getInteger(this, ("Total_Calls_" + toString(read_OptionCounterID))) {
64- case a: Int =>
65- a
66- case _ =>
67- 0
68- }
69- let TotalCallinSpecificCounter = (PreviousCallinSpecificCounter + 1)
70- let PreviousUserCall = match getInteger(this, (User_Address + "_Total_Calls")) {
71- case a: Int =>
72- a
73- case _ =>
74- 0
75- }
76- let TotalUserCall = (PreviousUserCall + 1)
77- let PreviousUserCallinSpecificCounter = match getInteger(this, ((User_Address + "_Total_Calls_") + toString(read_OptionCounterID))) {
78- case a: Int =>
79- a
80- case _ =>
81- 0
82- }
83- let TotalUserCallinSpecificCounter = (PreviousUserCallinSpecificCounter + 1)
84- let Funds_at_risk = House_risk
85- if ((i.caller != whitelist_address))
86- then throw((("This Address is not Authorized. Only " + toString(whitelist_address)) + " is Authorized Address to Sign it."))
87- else if ((product_launch_timestamp > lastBlock.timestamp))
88- then throw((product_launch_error + toString(product_launch_timestamp)))
89- else if ((Oracle_Status == "CLOSE"))
90- then throw(closed_oracle_eror)
91- else if ((ifBlacklisted == "Yes"))
92- then throw((User_Address + " Address is Blacklisted. Please contact Admin to Whitelist it."))
93- else if ((lastBlock.timestamp >= read_end_order_permit_timestamp))
94- then throw("Option Order placing Timing Limits are Over. Please Join in Next Cycle.")
95- else if ((minimum_order_size > Amount))
96- then throw((("Placed Order Size is less than [" + toString(minimum_order_size)) + "/10^8] WAVES."))
97- else if ((Amount > maximum_order_size))
98- then throw((("Placed Order Size is more than [" + toString(maximum_order_size)) + "/10^8] WAVES."))
99- else if ((0 > update_user_funds))
100- then throw("Placed Order Amount is going negative. Please reduce the Order Size.")
101- else if ((size(toString(Start_Order_Timestamp)) != 13))
102- then throw("Start Timestamp is Wrong. Please Enter a Valid Timestamp. Probably you entered an Timestamp less than 13 Chars.")
103- else if ((size(toString(End_Order_Timestamp)) != 13))
104- then throw("End Timestamp is Wrong. Please Enter a Valid Timestamp. Probably you entered an Timestamp less than 13 Chars.")
105- else [StringEntry(("User_ID_" + User_Address), User_ID), IntegerEntry(((Currency_ID + "_") + User_Address), update_user_funds), IntegerEntry("Network_Fee_To_Place_Order", network_fee), StringEntry(((("Call_" + User_Address) + "_") + toString(TotalUserCall)), toString(Price)), IntegerEntry(((("Call_Amount_" + User_Address) + "_") + toString(TotalUserCall)), Amount), StringEntry(((("Call_Start_End_" + User_Address) + "_") + toString(TotalUserCall)), ((toString(read_OptionCounterID) + "_") + toString(OptionExpireCounterID))), IntegerEntry("Total_Option_Orders", TotalOptionOrders), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(read_OptionCounterID)), TotalFundsAddedInSpecificOptionOrder), IntegerEntry("Total_Pool_Liquidity", Total_Pool_Liquidity), IntegerEntry(("Funds_At_Risk_" + toString(read_OptionCounterID)), Funds_at_risk), IntegerEntry("Call_Limits", Call_Limits), IntegerEntry("Put_Limits", Put_Limits), IntegerEntry(("Total_Option_Orders_" + toString(read_OptionCounterID)), TotalOptionOrdersinSpecificCounter), IntegerEntry("Total_Calls", TotalCall), IntegerEntry(("Total_Calls_" + toString(read_OptionCounterID)), TotalCallinSpecificCounter), IntegerEntry((User_Address + "_Total_Calls"), TotalUserCall), IntegerEntry(((User_Address + "_Total_Calls_") + toString(read_OptionCounterID)), TotalUserCallinSpecificCounter)]
36+ let total_incoming_txn = (read_incoming_txn + 1)
37+[IntegerEntry("Total_Incoming_Txns", total_incoming_txn), IntegerEntry(get_incoming_hash, parseIntValue(get_incoming_amount))]
10638 }
10739
10840
10941
11042 @Callable(i)
111-func placeoptionPut (Total_Pool_Liquidity,Amount,OptionCounterID,User_ID,User_Address,House_risk,Price,Call_Limits,Put_Limits,Oracle_Status,Start_Order_Timestamp,End_Order_Timestamp) = {
112- let calleraddress = toBase58String(i.caller.bytes)
113- let ifBlacklisted = getString(this, ("addr_BLACKLISTED_" + User_Address))
114- let read_user_funds = getIntegerValue(((Currency_ID + "_") + User_Address))
115- let update_user_funds = ((read_user_funds - Amount) - network_fee)
116- let read_start_order_permit_timestamp = Start_Order_Timestamp
117- let read_end_order_permit_timestamp = End_Order_Timestamp
118- let read_OptionCounterID = OptionCounterID
119- let OpionExpireCounter = 1
120- let OptionExpireCounterID = (read_OptionCounterID + OpionExpireCounter)
121- let PreviousOptionOrders = match getInteger(this, "Total_Option_Orders") {
122- case a: Int =>
123- a
124- case _ =>
125- 0
126- }
127- let TotalOptionOrders = (PreviousOptionOrders + 1)
128- let PreviousFundsAddedInSpecificOptionOrder = match getInteger(this, ("Total_Funds_Added_In_Option_Order_" + toString(read_OptionCounterID))) {
129- case a: Int =>
130- a
131- case _ =>
132- 0
133- }
134- let TotalFundsAddedInSpecificOptionOrder = (PreviousFundsAddedInSpecificOptionOrder + Amount)
135- let PreviousOptionOrdersinSpecificCounter = match getInteger(this, ("Total_Option_Orders_" + toString(read_OptionCounterID))) {
136- case a: Int =>
137- a
138- case _ =>
139- 0
140- }
141- let TotalOptionOrdersinSpecificCounter = (PreviousOptionOrdersinSpecificCounter + 1)
142- let PreviousPut = match getInteger(this, "Total_Puts") {
143- case a: Int =>
144- a
145- case _ =>
146- 0
147- }
148- let TotalPut = (PreviousPut + 1)
149- let PreviousPutinSpecificCounter = match getInteger(this, ("Total_Puts_" + toString(read_OptionCounterID))) {
150- case a: Int =>
151- a
152- case _ =>
153- 0
154- }
155- let TotalPutinSpecificCounter = (PreviousPutinSpecificCounter + 1)
156- let PreviousUserPut = match getInteger(this, (User_Address + "_Total_Puts")) {
157- case a: Int =>
158- a
159- case _ =>
160- 0
161- }
162- let TotalUserPut = (PreviousUserPut + 1)
163- let PreviousUserPutinSpecificCounter = match getInteger(this, ((User_Address + "_Total_Puts_") + toString(read_OptionCounterID))) {
164- case a: Int =>
165- a
166- case _ =>
167- 0
168- }
169- let TotalUserPutinSpecificCounter = (PreviousUserPutinSpecificCounter + 1)
170- let Funds_at_risk = House_risk
171- if ((i.caller != whitelist_address))
172- then throw((("This Address is not Authorized. Only " + toString(whitelist_address)) + " is Authorized Address to Sign it."))
173- else if ((product_launch_timestamp > lastBlock.timestamp))
174- then throw((product_launch_error + toString(product_launch_timestamp)))
175- else if ((Oracle_Status == "CLOSE"))
176- then throw(closed_oracle_eror)
177- else if ((ifBlacklisted == "Yes"))
178- then throw((User_Address + " Address is Blacklisted. Please contact Admin to Whitelist it."))
179- else if ((lastBlock.timestamp >= read_end_order_permit_timestamp))
180- then throw("Option Order placing Timing Limits are Over. Please Join in Next Cycle.")
181- else if ((minimum_order_size > Amount))
182- then throw((("Placed Order Size is less than [" + toString(minimum_order_size)) + "/10^8] WAVES."))
183- else if ((Amount > maximum_order_size))
184- then throw((("Placed Order Size is more than [" + toString(maximum_order_size)) + "/10^8] WAVES."))
185- else if ((0 > update_user_funds))
186- then throw("Placed Order Amount is going negative. Please reduce the Order Size.")
187- else if ((size(toString(Start_Order_Timestamp)) != 13))
188- then throw("Start Timestamp is Wrong. Please Enter a Valid Timestamp. Probably you entered an Timestamp less than 13 Chars.")
189- else if ((size(toString(End_Order_Timestamp)) != 13))
190- then throw("End Timestamp is Wrong. Please Enter a Valid Timestamp. Probably you entered an Timestamp less than 13 Chars.")
191- else [StringEntry(("User_ID_" + User_Address), User_ID), IntegerEntry(((Currency_ID + "_") + User_Address), update_user_funds), IntegerEntry("Network_Fee_To_Place_Order", network_fee), StringEntry(((("Put_" + User_Address) + "_") + toString(TotalUserPut)), toString(Price)), IntegerEntry(((("Put_Amount_" + User_Address) + "_") + toString(TotalUserPut)), Amount), StringEntry(((("Put_Start_End_" + User_Address) + "_") + toString(TotalUserPut)), ((toString(read_OptionCounterID) + "_") + toString(OptionExpireCounterID))), IntegerEntry("Total_Option_Orders", TotalOptionOrders), IntegerEntry(("Total_Funds_Added_In_Option_Order_" + toString(read_OptionCounterID)), TotalFundsAddedInSpecificOptionOrder), IntegerEntry("Total_Pool_Liquidity", Total_Pool_Liquidity), IntegerEntry(("Funds_At_Risk_" + toString(read_OptionCounterID)), Funds_at_risk), IntegerEntry("Call_Limits", Call_Limits), IntegerEntry("Put_Limits", Put_Limits), IntegerEntry(("Total_Option_Orders_" + toString(read_OptionCounterID)), TotalOptionOrdersinSpecificCounter), IntegerEntry("Total_Puts", TotalPut), IntegerEntry(("Total_Puts_" + toString(read_OptionCounterID)), TotalPutinSpecificCounter), IntegerEntry((User_Address + "_Total_Puts"), TotalUserPut), IntegerEntry(((User_Address + "_Total_Puts_") + toString(read_OptionCounterID)), TotalUserPutinSpecificCounter)]
192- }
193-
194-
195-
196-@Callable(i)
197-func DepositUserFunds () = {
198- let calleraddress = toBase58String(i.caller.bytes)
199- let pmt = if ((size(i.payments) == 1))
200- then i.payments[0]
201- else throw("No payment attached, Please Attach only Whitelisted Tokens in payment[1].")
202- let ifBlacklisted = getString(this, ("addr_BLACKLISTED_" + calleraddress))
203- let PreviousUserDeposit = match getInteger(this, ((Currency_ID + "_") + calleraddress)) {
204- case a: Int =>
205- a
206- case _ =>
207- 0
208- }
209- let TotalUserDeposit = (PreviousUserDeposit + pmt.amount)
210- let PreviousDepositCounterID = match getInteger(this, "Deposit_Counter_ID") {
211- case a: Int =>
212- a
213- case _ =>
214- 0
215- }
216- let TotalDepositCounterID = (PreviousDepositCounterID + 1)
217- if ((product_launch_timestamp > lastBlock.timestamp))
218- then throw((product_launch_error + toString(product_launch_timestamp)))
219- else if ((ifBlacklisted == "Yes"))
220- then throw((calleraddress + " Address is Blacklisted. Please contact Admin to Whitelist it."))
221- else if (isDefined(pmt.assetId))
222- then throw("Only WAVES is allowed to deposit at the moment")
223- else [IntegerEntry(((Currency_ID + "_") + calleraddress), TotalUserDeposit), IntegerEntry(((((toString(TotalDepositCounterID) + "_") + Currency_ID) + "_") + calleraddress), pmt.amount), IntegerEntry("Deposit_Counter_ID", TotalDepositCounterID)]
224- }
225-
226-
227-
228-@Callable(i)
229-func WithdrawUserFunds (User_Address,Amount) = {
230- let calleraddress = toBase58String(i.caller.bytes)
231- let readuserbalance = getIntegerValue(((Currency_ID + "_") + User_Address))
232- let update_user_funds = ((readuserbalance - Amount) - network_fee)
233- let minimim_withdraw_amount = 10000000
234- if ((i.caller != whitelist_address))
235- then throw((("This Address is not Authorized. Only " + toString(whitelist_address)) + " is Authorized Address to Sign it."))
236- else if ((minimim_withdraw_amount > Amount))
237- then throw((("Minimum Withdraw Amount is " + toString(minimim_withdraw_amount)) + "/10^8] WAVES."))
238- else if ((0 > update_user_funds))
239- then throw((("Placed Withdraw Amount is going in negative State of " + toString(update_user_funds)) + "/10^8] WAVES."))
240- else [IntegerEntry("Previous_Balance", readuserbalance), IntegerEntry("Network_Fee_To_Withdraw", network_fee), IntegerEntry(((Currency_ID + "_") + User_Address), update_user_funds), ScriptTransfer(whitelist_address, network_fee, unit), ScriptTransfer(addressFromStringValue(User_Address), Amount, unit)]
241- }
242-
243-
244-
245-@Callable(i)
246-func BlackListAddress (UserAddress) = {
247- let ifBlacklisted = getString(this, ("addr_BLACKLISTED_" + UserAddress))
248- let PreviousBlackListAddress = match getInteger(this, "Total_Black_Listed_Address") {
249- case a: Int =>
250- a
251- case _ =>
252- 0
253- }
254- let TotalBlackListAddress = (PreviousBlackListAddress + 1)
255- if ((product_launch_timestamp > lastBlock.timestamp))
256- then throw((product_launch_error + toString(product_launch_timestamp)))
257- else if ((i.caller != whitelist_address))
258- then throw((("This Address is not Authorized. Only " + toString(whitelist_address)) + " is Authorized Address to Sign it."))
259- else if ((ifBlacklisted == "Yes"))
260- then throw("Address is already available in Blacklist.")
261- else [StringEntry(("addr_BLACKLISTED_" + UserAddress), "Yes"), IntegerEntry("Total_Black_Listed_Address", TotalBlackListAddress)]
262- }
263-
264-
265-
266-@Callable(i)
267-func DeleteBlackListAddress (UserAddress) = {
268- let ifBlacklisted = getString(this, ("addr_BLACKLISTED_" + UserAddress))
269- let PreviousBlackListAddress = match getInteger(this, "Total_Black_Listed_Address") {
270- case a: Int =>
271- a
272- case _ =>
273- 0
274- }
275- let TotalBlackListAddress = (PreviousBlackListAddress - 1)
276- if ((product_launch_timestamp > lastBlock.timestamp))
277- then throw(("Product Launch Timestamp is set at " + toString(product_launch_timestamp)))
278- else if ((i.caller != whitelist_address))
279- then throw((("This Address is not Authorized. Only " + toString(whitelist_address)) + " is Authorized Address to Sign it."))
280- else if ((ifBlacklisted == "Yes"))
281- then [DeleteEntry(("addr_BLACKLISTED_" + UserAddress)), IntegerEntry("Total_Black_Listed_Address", TotalBlackListAddress)]
282- else throw("Address is not available in Blacklist.")
283- }
43+func Delete (Key,Key1,Key2,Key3) = [DeleteEntry(Key), DeleteEntry(Key1), DeleteEntry(Key2), DeleteEntry(Key3)]
28444
28545

github/deemru/w8io/3ef1775 
102.47 ms