Terms of Reference for a token

General information on the project:

Blockchain: BSC
Project composition: BEP-20 token, crowdsale + vesting contract, contract and backend for usdt distribution, site for sales and branding of tokens, as well as containing information on the project, lightpaper (2-3 pages) + translation into English.
AGTI Token

Name: AGTI
Symbol: AGTI
Decimals: 0 (This means that buying/transferring and any other operations can be carried out only with a !whole! token. 0.1, 3.5, etc. are not allowed).
Burnable: yes (only token owner can burn, holders cannot) Mintable: no
Total Supply: 1
Allocation: 50/50 for 2 addresses provided by the customer.
Crowdsale + vesting

The number of tokens for sale is not known in advance, just as the price is not known in advance. The mechanics will be as follows: the owner transfers tokens from his wallet to the crowdsale contract and sales are available as long as there are unsold tokens on the contract. Further, the owner can replenish another contract with tokens, if he wants, and extend the sale. It should be possible to withdraw unsold tokens at any time. Owner can change the price at any time.
The sale will be for USDT tokens https://bscscan.com/token/0x55d398326f99059ff775485246999027b3197955 But it should be possible to change or add a payment method.
All sold tokens do not immediately fall into the wallet of the buyer, but remain on the contract. A record appears stating that address X bought Y number of tokens. When the owner calls the “allow withdrawal” function, then the users will be able to brand their Y tokens. If users buy tokens after the owner calls the “allow withdrawal” function, then they are transferred to the user immediately.
The owner can record buyers in the contract so that these buyers can then pick up AGTI tokens. This functionality will be used to deposit buyers for “cash” or users who received tokens for free as part of the bounty program.
Users have the opportunity to exchange AGTI tokens for shares. The exchange takes place by transferring AGTI to the address of the customer and then transferring shares to a brokerage account (OUTSIDE THE BLOCKCHAIN). This happens by prior arrangement with the customer. If the tokens are vested, but the user wants to exchange them for shares, the following functionality should be provided: Owner adds users who can buy shares to the “whitelist”. Such users will have access to the function “relinquish N number of tokens”. Users will call it, and this amount will be deducted from their purchase record and burned. Users will provide the customer with this transaction as confirmation of payment for the promotion, and for further receipt of the promotion to their account.
Distribution of USDT

All AGTI holders are awarded USDT every 3 months. It should be possible to replace USDT with another stablecoin if necessary. On the contract, the distributor owner transfers N-amount of USDT for distribution this quarter. USDT is divided between holders in proportion to the ownership of AGTI tokens. While all tokens are vested, holders are known and USDT is distributed among them. When the tokens are in free circulation, in order to receive USDT, users must register their wallet address, on which the balance will be checked. The registration window will open 7 days before the USDT distribution. IMPORTANT: Profit for the reporting quarter is accrued to those tokens that were initially sold in the previous quarter before the reporting quarter and earlier. Profit is not accrued on those sold initially in the reporting quarter. Otherwise, everyone will buy in the last days of the quarter.