tx · BWDYvDc6nxYBpTNL18XHZtci5rZGKBCvi3S4yAhTJocm
3N9ttyLcRwDo7L4EmJkbS3ZFuQJygivupsL: -0.00500000 Waves
2024.04.10 22:35 [3057111] invoke 3N9ttyLcRwDo7L4EmJkbS3ZFuQJygivupsL > 3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV commitTask()
3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV: checked_out_by_92ovWCy1Zf8CSsTLLLssC74m8yn5yPMqVp9fmVacou97_chatgpt_DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE: true -> null
3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV: DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_commit_timestamp_chatgpt: 1712777724556
3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV: DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_commit_height_chatgpt: 3057111
3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV: DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_result_chatgpt: "Certainly! Here is an example EVM (Ethereum Virtual Machine) contract creation code snippet for creating a standard ERC-20 token on the Ethereum blockchain:
```solidity
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
contract MyToken is IERC20 {
string public constant name = "My Token";
string public constant symbol = "MT";
uint8 public constant decimals = 18;
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
constructor(uint256 initialSupply) {
_totalSupply = initialSupply * (10 ** decimals);
_balances[msg.sender] = _totalSupply;
emit Transfer(address(0), msg.sender, _totalSupply);
}
function totalSupply() public view override returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view override returns (uint256) {
return _balances[account];
}
function transfer(address recipient, uint256 amount) public override returns (bool) {
_transfer(msg.sender, recipient, amount);
return true;
}
function allowance(address owner, address spender) public view override returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public override returns (bool) {
_approve(msg.sender, spender, amount);
return true;
}
function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
_transfer(sender, recipient, amount);
_approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);
return true;
}
function _transfer(address sender, address recipient, uint256 amount) internal {
require(sender != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
require(_balances[sender] >= amount, "ERC20: transfer amount exceeds balance");
_balances[sender] -= amount;
_balances[recipient] += amount;
emit Transfer(sender, recipient, amount);
}
function _approve(address owner, address spender, uint256 amount) internal {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
}
```
This basic contract defines the functionalities and events required for an ERC-20 token. Remember that before deploying a contract on mainnet or any Ethereum network, you should ensure thorough testing and auditing to secure your smart contract."
3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV: DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_status_chatgpt: "checked_out" -> "done"
{
"type": 16,
"id": "BWDYvDc6nxYBpTNL18XHZtci5rZGKBCvi3S4yAhTJocm",
"fee": 500000,
"feeAssetId": null,
"timestamp": 1712777740871,
"version": 2,
"chainId": 84,
"sender": "3N9ttyLcRwDo7L4EmJkbS3ZFuQJygivupsL",
"senderPublicKey": "92ovWCy1Zf8CSsTLLLssC74m8yn5yPMqVp9fmVacou97",
"proofs": [
"5ESkwe1Sa7GzfxdPsYhUDaqvHswv31XmYjok1eQSM1ySuWGEAsbbsPQvxx9agifruG82c4GHj5kbiacxNmU6k3pk"
],
"dApp": "3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV",
"payment": [],
"call": {
"function": "commitTask",
"args": [
{
"type": "string",
"value": "DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE"
},
{
"type": "string",
"value": "Certainly! Here is an example EVM (Ethereum Virtual Machine) contract creation code snippet for creating a standard ERC-20 token on the Ethereum blockchain:\n\n```solidity\n// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IERC20 {\n function totalSupply() external view returns (uint256);\n function balanceOf(address account) external view returns (uint256);\n function transfer(address recipient, uint256 amount) external returns (bool);\n function allowance(address owner, address spender) external view returns (uint256);\n function approve(address spender, uint256 amount) external returns (bool);\n function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\ncontract MyToken is IERC20 {\n string public constant name = "My Token";\n string public constant symbol = "MT";\n uint8 public constant decimals = 18;\n \n mapping(address => uint256) private _balances;\n mapping(address => mapping(address => uint256)) private _allowances;\n \n uint256 private _totalSupply;\n \n constructor(uint256 initialSupply) {\n _totalSupply = initialSupply * (10 ** decimals);\n _balances[msg.sender] = _totalSupply;\n emit Transfer(address(0), msg.sender, _totalSupply);\n }\n \n function totalSupply() public view override returns (uint256) {\n return _totalSupply;\n }\n \n function balanceOf(address account) public view override returns (uint256) {\n return _balances[account];\n }\n \n function transfer(address recipient, uint256 amount) public override returns (bool) {\n _transfer(msg.sender, recipient, amount);\n return true;\n }\n \n function allowance(address owner, address spender) public view override returns (uint256) {\n return _allowances[owner][spender];\n }\n \n function approve(address spender, uint256 amount) public override returns (bool) {\n _approve(msg.sender, spender, amount);\n return true;\n }\n \n function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {\n _transfer(sender, recipient, amount);\n _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);\n return true;\n }\n \n function _transfer(address sender, address recipient, uint256 amount) internal {\n require(sender != address(0), "ERC20: transfer from the zero address");\n require(recipient != address(0), "ERC20: transfer to the zero address");\n require(_balances[sender] >= amount, "ERC20: transfer amount exceeds balance");\n \n _balances[sender] -= amount;\n _balances[recipient] += amount;\n \n emit Transfer(sender, recipient, amount);\n }\n \n function _approve(address owner, address spender, uint256 amount) internal {\n require(owner != address(0), "ERC20: approve from the zero address");\n require(spender != address(0), "ERC20: approve to the zero address");\n \n _allowances[owner][spender] = amount;\n emit Approval(owner, spender, amount);\n }\n}\n```\n\nThis basic contract defines the functionalities and events required for an ERC-20 token. Remember that before deploying a contract on mainnet or any Ethereum network, you should ensure thorough testing and auditing to secure your smart contract."
}
]
},
"height": 3057111,
"applicationStatus": "succeeded",
"spentComplexity": 67,
"stateChanges": {
"data": [
{
"key": "DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_status_chatgpt",
"type": "string",
"value": "done"
},
{
"key": "DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_result_chatgpt",
"type": "string",
"value": "Certainly! Here is an example EVM (Ethereum Virtual Machine) contract creation code snippet for creating a standard ERC-20 token on the Ethereum blockchain:\n\n```solidity\n// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface IERC20 {\n function totalSupply() external view returns (uint256);\n function balanceOf(address account) external view returns (uint256);\n function transfer(address recipient, uint256 amount) external returns (bool);\n function allowance(address owner, address spender) external view returns (uint256);\n function approve(address spender, uint256 amount) external returns (bool);\n function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\ncontract MyToken is IERC20 {\n string public constant name = "My Token";\n string public constant symbol = "MT";\n uint8 public constant decimals = 18;\n \n mapping(address => uint256) private _balances;\n mapping(address => mapping(address => uint256)) private _allowances;\n \n uint256 private _totalSupply;\n \n constructor(uint256 initialSupply) {\n _totalSupply = initialSupply * (10 ** decimals);\n _balances[msg.sender] = _totalSupply;\n emit Transfer(address(0), msg.sender, _totalSupply);\n }\n \n function totalSupply() public view override returns (uint256) {\n return _totalSupply;\n }\n \n function balanceOf(address account) public view override returns (uint256) {\n return _balances[account];\n }\n \n function transfer(address recipient, uint256 amount) public override returns (bool) {\n _transfer(msg.sender, recipient, amount);\n return true;\n }\n \n function allowance(address owner, address spender) public view override returns (uint256) {\n return _allowances[owner][spender];\n }\n \n function approve(address spender, uint256 amount) public override returns (bool) {\n _approve(msg.sender, spender, amount);\n return true;\n }\n \n function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {\n _transfer(sender, recipient, amount);\n _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);\n return true;\n }\n \n function _transfer(address sender, address recipient, uint256 amount) internal {\n require(sender != address(0), "ERC20: transfer from the zero address");\n require(recipient != address(0), "ERC20: transfer to the zero address");\n require(_balances[sender] >= amount, "ERC20: transfer amount exceeds balance");\n \n _balances[sender] -= amount;\n _balances[recipient] += amount;\n \n emit Transfer(sender, recipient, amount);\n }\n \n function _approve(address owner, address spender, uint256 amount) internal {\n require(owner != address(0), "ERC20: approve from the zero address");\n require(spender != address(0), "ERC20: approve to the zero address");\n \n _allowances[owner][spender] = amount;\n emit Approval(owner, spender, amount);\n }\n}\n```\n\nThis basic contract defines the functionalities and events required for an ERC-20 token. Remember that before deploying a contract on mainnet or any Ethereum network, you should ensure thorough testing and auditing to secure your smart contract."
},
{
"key": "DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_commit_height_chatgpt",
"type": "integer",
"value": 3057111
},
{
"key": "DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE_commit_timestamp_chatgpt",
"type": "integer",
"value": 1712777724556
},
{
"key": "checked_out_by_92ovWCy1Zf8CSsTLLLssC74m8yn5yPMqVp9fmVacou97_chatgpt_DUyaSEbRwAcot7og5tbdLCPfQ19RWMgYkunG7F4i1dSC_3jP6JfYe3qCG8UmG5mfMf7bfrk6BF7av4hH68WNikFrE",
"value": null
}
],
"transfers": [],
"issues": [],
"reissues": [],
"burns": [],
"sponsorFees": [],
"leases": [],
"leaseCancels": [],
"invokes": []
}
}