Skip to content

Commit

Permalink
update 1 & 2 tasks descriptions
Browse files Browse the repository at this point in the history
  • Loading branch information
aSpite committed Dec 21, 2023
1 parent 8b38763 commit ab2711c
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 5 deletions.
11 changes: 8 additions & 3 deletions descriptions/1.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,14 @@ After this time (the number of seconds passed in locked_for) any user can call e
**Contract Store:**
- public_key: uint256
- execution_time: uint32
- receiver: MsgAddressInt
- receiver: uint32
- seqno: uint32

TL-B:
```tlb
storage$_ public_key:uint256 execution_time:uint32 receiver:MsgAddressInt seqno:uint32 = Storage;
```

### Function 0x9df10277

The body of the message `op = 0x9df10277` must have a signature and 1 ref that will point to the cell with locked_for and new_seqno.
Expand All @@ -35,7 +40,7 @@ The checks go strictly in the following order:
- If execution_time < now(), you should throw error 122. Checking that execution_time has not passed yet.
- If now + locked_for < execution_time, throw error 123. Checking that the deferral of the will is strictly greater than the value by which it has already been deferred.

If all checks pass, then you need to update the execution_time field in the contract.
If all checks pass, then you need to update the `execution_time` ans `seqno` fields in the contract.

The logic is as follows:

Expand All @@ -47,7 +52,7 @@ If execution_time has already occurred, then any user can send a message with `o

TL-B:
```tlb
take_ownership#bb4be234 public_key:uint256 = ExtInMsgBody
claim#bb4be234 = ExtInMsgBody
```

- If execution_time has not occurred, error 124 should be thrown.
Expand Down
4 changes: 2 additions & 2 deletions descriptions/2.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[File with solution](../contracts/task2.fc)

Create a contract that is capable of accepting TON and tokens, and then distributing them to users according to their shires.
Create a contract that is capable of accepting TON and tokens, and then distributing them to users according to their shares.

The contract can accept a total of four operations:
- 0x368ddef3 -> Add User
Expand All @@ -27,7 +27,7 @@ The contract must contain the following fields in its storage after deployment:
- users: (HashmapE 267 uint32)

You can add new fields, but these fields must always be first and in the order,
in the order specified here. In testing, these fields will be written on defloat, so you need to take that into account.
in the order specified here. In testing, these fields will be written on default, so you need to take that into account.

### Add User

Expand Down

0 comments on commit ab2711c

Please sign in to comment.