├── .gitignore ├── remappings.txt ├── .solhint.json ├── .vscode └── settings.json ├── .gitmodules ├── src ├── Token20.sol ├── Token721.sol ├── test │ ├── utils │ │ ├── Utilities.sol │ │ └── Console.sol │ └── SmartAccount.t.sol ├── IPRBProxy.sol └── SmartAccount.sol ├── .github └── workflows │ └── CI.yml ├── package.json ├── README.md └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | out/ 2 | cache/ 3 | node_modules/ 4 | .env -------------------------------------------------------------------------------- /remappings.txt: -------------------------------------------------------------------------------- 1 | ds-test/=lib/ds-test/src/ 2 | solmate/=lib/solmate/src/ 3 | forge-std/=lib/forge-std/src/ 4 | @openzeppelin=node_modules/@openzeppelin/ -------------------------------------------------------------------------------- /.solhint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "solhint:recommended", 3 | "rules": { 4 | "compiler-version": ["error",">=0.8.0"], 5 | "avoid-low-level-calls": "off" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "editor.formatOnSave": true, 3 | "solidity.formatter": "prettier", 4 | "[solidity]": { 5 | "editor.defaultFormatter": "JuanBlanco.solidity" 6 | } 7 | } -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "lib/ds-test"] 2 | path = lib/ds-test 3 | url = https://github.com/dapphub/ds-test 4 | [submodule "lib/solmate"] 5 | path = lib/solmate 6 | url = https://github.com/Rari-Capital/solmate 7 | [submodule "lib/forge-std"] 8 | path = lib/forge-std 9 | url = https://github.com/brockelmore/forge-std 10 | -------------------------------------------------------------------------------- /src/Token20.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: Unlicense 2 | pragma solidity >=0.8.4; 3 | 4 | import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; 5 | 6 | contract Token20 is ERC20 { 7 | constructor() ERC20("Mock token", "MOCK") {} 8 | 9 | function mint(uint256 _amount) external { 10 | _mint(msg.sender, _amount); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/Token721.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: Unlicense 2 | pragma solidity >=0.8.4; 3 | 4 | import "@openzeppelin/contracts/token/ERC721/ERC721.sol"; 5 | 6 | contract Token721 is ERC721 { 7 | uint256 public nextTokenIdToMint; 8 | 9 | constructor() ERC721("Mock NFT", "MOCK") {} 10 | 11 | function mint() external { 12 | _mint(msg.sender, nextTokenIdToMint); 13 | nextTokenIdToMint += 1; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /.github/workflows/CI.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | on: 3 | push: 4 | branches: 5 | - master 6 | pull_request: 7 | 8 | jobs: 9 | run-ci: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v2 13 | with: 14 | submodules: recursive 15 | - uses: actions/setup-node@v2 16 | - name: Install dev dependencies 17 | run: npm install 18 | 19 | - name: Install Foundry 20 | uses: onbjerg/foundry-toolchain@v1 21 | with: 22 | version: nightly 23 | 24 | - name: Run lint check 25 | run: npm run lint:check 26 | 27 | - name: Run tests 28 | run: forge test 29 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "forge-template", 3 | "author": "FrankieIsLost", 4 | "version": "1.0.0", 5 | "description": "A forge template", 6 | "homepage": "https://github.com/FrankieIsLost/forge-template#readme", 7 | "repository": { 8 | "type": "git", 9 | "url": "git+https://github.com/FrankieIsLost/forge-template.git" 10 | }, 11 | "scripts": { 12 | "prettier": "prettier --write 'src/**/*.sol'", 13 | "prettier:list": "prettier --list-different 'src/**/*.sol'", 14 | "prettier:check": "prettier --check 'src/**/*.sol'", 15 | "solhint": "solhint --config ./.solhint.json 'src/**/*.sol' --fix", 16 | "solhint:check": "solhint --config ./.solhint.json 'src/**/*.sol'", 17 | "lint": "npm run prettier && npm run solhint", 18 | "lint:check": "npm run prettier:check && npm run solhint:check" 19 | }, 20 | "devDependencies": { 21 | "prettier": "^2.5.1", 22 | "prettier-plugin-solidity": "^1.0.0-beta.19", 23 | "solhint": "^3.3.6" 24 | }, 25 | "dependencies": { 26 | "@openzeppelin/contracts": "^4.5.0" 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Smart accounts - example 2 | 3 | This is an example of using 'smart accounts' -- smart contracts owned by an end-user wallet letting the user perform multiple actions 4 | to different contracts in a single transaction. 5 | 6 | The end-user owned smart contract is `src/SmartAccount.sol`. This contract is a modified version of [`prb-proxy`](https://github.com/paulrberg/prb-proxy). (See changelog in the contract file). 7 | 8 | The example flow can be found in `src/test/SmartAccount.t.sol`. The tests enact the following high level flow: the end user mints 9 | some ERC20 and ERC721 tokens (two actions on two different smart contracts) within a single transaction. The application developer or 10 | end user can choose whether the assets remain in the end-user owned/controlled smart contract wallet, or in the end-user's owned wallet. 11 | 12 | ## How to run tests 13 | 14 | The tests are written using the foundry/forge testing framework. All setup information for foundry/forge can be found [here](https://github.com/gakonst/foundry). 15 | 16 | To run tests: 17 | ``` 18 | forge build 19 | ``` 20 | then: 21 | ``` 22 | forge test --match-contract SmartAccount 23 | ``` 24 | 25 | ### Authors 26 | - [thirdweb](https://thirdweb.com/) -------------------------------------------------------------------------------- /src/test/utils/Utilities.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: Unlicense 2 | pragma solidity >=0.8.0; 3 | 4 | import {DSTest} from "ds-test/test.sol"; 5 | import {Vm} from "forge-std/Vm.sol"; 6 | 7 | //common utilities for forge tests 8 | contract Utilities is DSTest { 9 | Vm internal immutable vm = Vm(HEVM_ADDRESS); 10 | bytes32 internal nextUser = keccak256(abi.encodePacked("user address")); 11 | 12 | function getNextUserAddress() external returns (address payable) { 13 | //bytes32 to address conversion 14 | address payable user = payable(address(uint160(uint256(nextUser)))); 15 | nextUser = keccak256(abi.encodePacked(nextUser)); 16 | return user; 17 | } 18 | 19 | //create users with 100 ether balance 20 | function createUsers(uint256 userNum) 21 | external 22 | returns (address payable[] memory) 23 | { 24 | address payable[] memory users = new address payable[](userNum); 25 | for (uint256 i = 0; i < userNum; i++) { 26 | address payable user = this.getNextUserAddress(); 27 | vm.deal(user, 100 ether); 28 | users[i] = user; 29 | } 30 | return users; 31 | } 32 | 33 | //move block.number forward by a given number of blocks 34 | function mineBlocks(uint256 numBlocks) external { 35 | uint256 targetBlock = block.number + numBlocks; 36 | vm.roll(targetBlock); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/IPRBProxy.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: Unlicense 2 | pragma solidity >=0.8.4; 3 | 4 | /// @title IPRBProxy 5 | /// @author Paul Razvan Berg 6 | /// @notice Proxy contract to compose transactions on owner's behalf. 7 | interface IPRBProxy { 8 | /// EVENTS /// 9 | 10 | event Execute(address indexed target, bytes data, bytes response); 11 | 12 | event TransferOwnership(address indexed oldOwner, address indexed newOwner); 13 | 14 | /// PUBLIC CONSTANT FUNCTIONS /// 15 | 16 | /// @notice Returns a boolean flag that indicates whether the envoy has permission to call the given target 17 | /// contract and function selector. 18 | function getPermission( 19 | address envoy, 20 | address target, 21 | bytes4 selector 22 | ) external view returns (bool); 23 | 24 | /// @notice The address of the owner account or contract. 25 | function owner() external view returns (address); 26 | 27 | /// @notice How much gas to reserve for running the remainder of the "execute" function after the DELEGATECALL. 28 | /// @dev This prevents the proxy from becoming unusable if EVM opcode gas costs change in the future. 29 | function minGasReserve() external view returns (uint256); 30 | 31 | /// PUBLIC NON-CONSTANT FUNCTIONS /// 32 | 33 | /// @notice Delegate calls to the target contract by forwarding the call data. Returns the data it gets back, 34 | /// including when the contract call reverts with a reason or custom error. 35 | /// 36 | /// @dev Requirements: 37 | /// - The caller must be either an owner or an envoy. 38 | /// - `target` must be a deployed contract. 39 | /// - The owner cannot be changed during the DELEGATECALL. 40 | /// 41 | /// @param target The address of the target contract. 42 | /// @param data Function selector plus ABI encoded data. 43 | /// @return response The response received from the target contract. 44 | function execute(address target, bytes calldata data) 45 | external 46 | payable 47 | returns (bytes memory response); 48 | 49 | /// @notice Gives or takes a permission from an envoy to call the given target contract and function selector 50 | /// on behalf of the owner. 51 | /// @dev It is not an error to reset a permission on the same (envoy,target,selector) tuple multiple types. 52 | /// 53 | /// Requirements: 54 | /// - The caller must be the owner. 55 | /// 56 | /// @param envoy The address of the envoy account. 57 | /// @param target The address of the target contract. 58 | /// @param selector The 4 byte function selector on the target contract. 59 | /// @param permission The boolean permission to set. 60 | function setPermission( 61 | address envoy, 62 | address target, 63 | bytes4 selector, 64 | bool permission 65 | ) external; 66 | 67 | /// @notice Transfers the owner of the contract to a new account. 68 | /// @dev Requirements: 69 | /// - The caller must be the owner. 70 | /// @param newOwner The address of the new owner account. 71 | function transferOwnership(address newOwner) external; 72 | } 73 | -------------------------------------------------------------------------------- /src/test/SmartAccount.t.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: Unlicense 2 | pragma solidity >=0.8.0; 3 | 4 | // Test utils 5 | import {DSTest} from "ds-test/test.sol"; 6 | import {Utilities} from "./utils/Utilities.sol"; 7 | import {console} from "./utils/Console.sol"; 8 | import {Vm} from "forge-std/Vm.sol"; 9 | 10 | // Contracts to test 11 | import {Token20} from "../Token20.sol"; 12 | import {Token721} from "../Token721.sol"; 13 | import {SmartAccount} from "../SmartAccount.sol"; 14 | 15 | contract SmartAccountTest is DSTest { 16 | Vm internal immutable vm = Vm(HEVM_ADDRESS); 17 | Utilities internal utils; 18 | 19 | // End user 20 | address internal endUser; 21 | 22 | // Mock token contracts 23 | Token20 internal token20; 24 | Token721 internal token721; 25 | 26 | // Proxy-wallet 27 | SmartAccount internal proxyWallet; 28 | 29 | function setUp() public { 30 | utils = new Utilities(); 31 | endUser = utils.getNextUserAddress(); 32 | 33 | // Deploy mock token contracts 34 | token20 = new Token20(); 35 | token721 = new Token721(); 36 | 37 | // End user creates their proxy wallet 38 | proxyWallet = new SmartAccount(endUser); 39 | } 40 | 41 | function testProxyWallet() public { 42 | uint256 targetNFTTokenId = token721.nextTokenIdToMint(); 43 | uint256 erc20AmountToMint = 5 ether; 44 | 45 | // Initially: proxywallet owns no ERC20 or ERC721 tokens. 46 | assertEq(token20.balanceOf(address(proxyWallet)), 0); 47 | 48 | // End user mints ERC20 and ERC721 tokens in a single transaction via proxy wallet. 49 | address[] memory executionTarget = new address[](2); 50 | executionTarget[0] = address(token20); 51 | executionTarget[1] = address(token721); 52 | 53 | bytes[] memory executionData = new bytes[](2); 54 | executionData[0] = abi.encodeCall(Token20.mint, (erc20AmountToMint)); 55 | executionData[1] = abi.encodeCall(Token721.mint, ()); 56 | 57 | vm.prank(endUser); 58 | proxyWallet.executeBatch(executionTarget, executionData); 59 | 60 | // Outcome: proxywallet owns the expected ERC20 or ERC721 tokens. 61 | assertEq(token20.balanceOf(address(proxyWallet)), erc20AmountToMint); 62 | assertEq(token721.ownerOf(targetNFTTokenId), address(proxyWallet)); 63 | } 64 | 65 | function testProxyWalletReturnAssets() public { 66 | uint256 erc20AmountToMint = 5 ether; 67 | 68 | // Initially: end user owns no ERC20 or ERC721 tokens. 69 | assertEq(token20.balanceOf(address(endUser)), 0); 70 | 71 | // End user mints ERC20 tokens -- tokens are first minted to proxyWallet and returned to user's wallet. 72 | address[] memory executionTarget = new address[](2); 73 | executionTarget[0] = address(token20); 74 | executionTarget[1] = address(token20); 75 | 76 | bytes[] memory executionData = new bytes[](2); 77 | executionData[0] = abi.encodeCall(token20.mint, (erc20AmountToMint)); 78 | executionData[1] = abi.encodeCall( 79 | token20.transfer, 80 | (endUser, erc20AmountToMint) 81 | ); 82 | 83 | vm.prank(endUser); 84 | proxyWallet.executeBatch(executionTarget, executionData); 85 | 86 | // Outcome: end user owns the expected ERC20 tokens. 87 | assertEq(token20.balanceOf(address(endUser)), erc20AmountToMint); 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /src/SmartAccount.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: Unlicense 2 | pragma solidity >=0.8.4; 3 | 4 | import "./IPRBProxy.sol"; 5 | 6 | import "@openzeppelin/contracts/token/ERC721/utils/ERC721Holder.sol"; 7 | import "@openzeppelin/contracts/token/ERC1155/utils/ERC1155Holder.sol"; 8 | import "@openzeppelin/contracts/utils/cryptography/ECDSA.sol"; 9 | import "@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol"; 10 | 11 | /** 12 | * - Changelog: 13 | * - Add `owner` parameter to constructor, instead of assigning ownership to `msg.sender` 14 | * - Replace `delegateCall` with `call` in the `execute` function body. 15 | * - Add an `executeBatch` function to execute multiple actions in different contracts, in 16 | * a single transaction. 17 | */ 18 | 19 | /// @notice Emitted when the caller is not the owner. 20 | error PRBProxy__ExecutionNotAuthorized( 21 | address owner, 22 | address caller, 23 | address target, 24 | bytes4 selector 25 | ); 26 | 27 | /// @notice Emitted when execution reverted with no reason. 28 | error PRBProxy__ExecutionReverted(); 29 | 30 | /// @notice Emitted when the caller is not the owner. 31 | error PRBProxy__NotOwner(address owner, address caller); 32 | 33 | /// @notice Emitted when the owner is changed during the DELEGATECALL. 34 | error PRBProxy__OwnerChanged(address originalOwner, address newOwner); 35 | 36 | /// @notice Emitted when passing an EOA or an undeployed contract as the target. 37 | error PRBProxy__TargetInvalid(address target); 38 | 39 | /// @title PRBProxy 40 | /// @author Paul Razvan Berg 41 | contract SmartAccount is IPRBProxy, ERC721Holder, ERC1155Holder { 42 | /// PUBLIC STORAGE /// 43 | 44 | /// @inheritdoc IPRBProxy 45 | address public override owner; 46 | 47 | /// @inheritdoc IPRBProxy 48 | uint256 public override minGasReserve; 49 | 50 | /// INTERNAL STORAGE /// 51 | 52 | /// @notice Maps envoys to target contracts to function selectors to boolean flags. 53 | mapping(address => mapping(address => mapping(bytes4 => bool))) 54 | internal permissions; 55 | 56 | /// CONSTRUCTOR /// 57 | 58 | constructor(address _owner) { 59 | minGasReserve = 5_000; 60 | owner = _owner; 61 | emit TransferOwnership(address(0), _owner); 62 | } 63 | 64 | /// FALLBACK FUNCTION /// 65 | 66 | /// @dev Called when Ether is sent and the call data is empty. 67 | receive() external payable {} 68 | 69 | /// PUBLIC CONSTANT FUNCTIONS /// 70 | 71 | /// @inheritdoc IPRBProxy 72 | function getPermission( 73 | address envoy, 74 | address target, 75 | bytes4 selector 76 | ) external view override returns (bool) { 77 | return permissions[envoy][target][selector]; 78 | } 79 | 80 | /// PUBLIC NON-CONSTANT FUNCTIONS /// 81 | 82 | function executeBatch(address[] calldata targets, bytes[] calldata data) 83 | public 84 | payable 85 | { 86 | require( 87 | targets.length == data.length, 88 | "unequal targets and execution data" 89 | ); 90 | 91 | for (uint256 i = 0; i < targets.length; i += 1) { 92 | execute(targets[i], data[i]); 93 | } 94 | } 95 | 96 | /// @inheritdoc IPRBProxy 97 | function execute(address target, bytes calldata data) 98 | public 99 | payable 100 | override 101 | returns (bytes memory response) 102 | { 103 | // Check that the caller is either the owner or an envoy. 104 | if (owner != msg.sender) { 105 | bytes4 selector; 106 | assembly { 107 | selector := calldataload(data.offset) 108 | } 109 | if (!permissions[msg.sender][target][selector]) { 110 | revert PRBProxy__ExecutionNotAuthorized( 111 | owner, 112 | msg.sender, 113 | target, 114 | selector 115 | ); 116 | } 117 | } 118 | 119 | // Check that the target is a valid contract. 120 | if (target.code.length == 0) { 121 | revert PRBProxy__TargetInvalid(target); 122 | } 123 | 124 | // Save the owner address in memory. This local variable cannot be modified during the DELEGATECALL. 125 | address owner_ = owner; 126 | 127 | // Reserve some gas to ensure that the function has enough to finish the execution. 128 | uint256 stipend = gasleft() - minGasReserve; 129 | 130 | // Call to the target contract. 131 | bool success; 132 | (success, response) = target.call{gas: stipend}(data); 133 | 134 | // Check that the owner has not been changed. 135 | if (owner_ != owner) { 136 | revert PRBProxy__OwnerChanged(owner_, owner); 137 | } 138 | 139 | // Log the execution. 140 | emit Execute(target, data, response); 141 | 142 | // Check if the call was successful or not. 143 | if (!success) { 144 | // If there is return data, the call reverted with a reason or a custom error. 145 | if (response.length > 0) { 146 | assembly { 147 | let returndata_size := mload(response) 148 | revert(add(32, response), returndata_size) 149 | } 150 | } else { 151 | revert PRBProxy__ExecutionReverted(); 152 | } 153 | } 154 | } 155 | 156 | /// @inheritdoc IPRBProxy 157 | function setPermission( 158 | address envoy, 159 | address target, 160 | bytes4 selector, 161 | bool permission 162 | ) external override { 163 | if (owner != msg.sender) { 164 | revert PRBProxy__NotOwner(owner, msg.sender); 165 | } 166 | permissions[envoy][target][selector] = permission; 167 | } 168 | 169 | /// @inheritdoc IPRBProxy 170 | function transferOwnership(address newOwner) external override { 171 | address oldOwner = owner; 172 | if (oldOwner != msg.sender) { 173 | revert PRBProxy__NotOwner(oldOwner, msg.sender); 174 | } 175 | owner = newOwner; 176 | emit TransferOwnership(oldOwner, newOwner); 177 | } 178 | } 179 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0": 6 | version "7.16.7" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" 8 | integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== 9 | dependencies: 10 | "@babel/highlight" "^7.16.7" 11 | 12 | "@babel/helper-validator-identifier@^7.16.7": 13 | version "7.16.7" 14 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" 15 | integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== 16 | 17 | "@babel/highlight@^7.16.7": 18 | version "7.16.10" 19 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" 20 | integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== 21 | dependencies: 22 | "@babel/helper-validator-identifier" "^7.16.7" 23 | chalk "^2.0.0" 24 | js-tokens "^4.0.0" 25 | 26 | "@openzeppelin/contracts@^4.5.0": 27 | version "4.5.0" 28 | resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.5.0.tgz#3fd75d57de172b3743cdfc1206883f56430409cc" 29 | integrity sha512-fdkzKPYMjrRiPK6K4y64e6GzULR7R7RwxSigHS8DDp7aWDeoReqsQI+cxHV1UuhAqX69L1lAaWDxenfP+xiqzA== 30 | 31 | "@solidity-parser/parser@^0.14.0", "@solidity-parser/parser@^0.14.1": 32 | version "0.14.1" 33 | resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.14.1.tgz#179afb29f4e295a77cc141151f26b3848abc3c46" 34 | integrity sha512-eLjj2L6AuQjBB6s/ibwCAc0DwrR5Ge+ys+wgWo+bviU7fV2nTMQhU63CGaDKXg9iTmMxwhkyoggdIR7ZGRfMgw== 35 | dependencies: 36 | antlr4ts "^0.5.0-alpha.4" 37 | 38 | acorn-jsx@^5.0.0: 39 | version "5.3.2" 40 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" 41 | integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== 42 | 43 | acorn@^6.0.7: 44 | version "6.4.2" 45 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" 46 | integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== 47 | 48 | ajv@^6.10.2, ajv@^6.6.1, ajv@^6.9.1: 49 | version "6.12.6" 50 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" 51 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 52 | dependencies: 53 | fast-deep-equal "^3.1.1" 54 | fast-json-stable-stringify "^2.0.0" 55 | json-schema-traverse "^0.4.1" 56 | uri-js "^4.2.2" 57 | 58 | ansi-escapes@^3.2.0: 59 | version "3.2.0" 60 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" 61 | integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== 62 | 63 | ansi-regex@^3.0.0: 64 | version "3.0.1" 65 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" 66 | integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== 67 | 68 | ansi-regex@^4.1.0: 69 | version "4.1.1" 70 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" 71 | integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== 72 | 73 | ansi-regex@^5.0.1: 74 | version "5.0.1" 75 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" 76 | integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== 77 | 78 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 79 | version "3.2.1" 80 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 81 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 82 | dependencies: 83 | color-convert "^1.9.0" 84 | 85 | antlr4@4.7.1: 86 | version "4.7.1" 87 | resolved "https://registry.yarnpkg.com/antlr4/-/antlr4-4.7.1.tgz#69984014f096e9e775f53dd9744bf994d8959773" 88 | integrity sha512-haHyTW7Y9joE5MVs37P2lNYfU2RWBLfcRDD8OWldcdZm5TiCE91B5Xl1oWSwiDUSd4rlExpt2pu1fksYQjRBYQ== 89 | 90 | antlr4ts@^0.5.0-alpha.4: 91 | version "0.5.0-alpha.4" 92 | resolved "https://registry.yarnpkg.com/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz#71702865a87478ed0b40c0709f422cf14d51652a" 93 | integrity sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ== 94 | 95 | argparse@^1.0.7: 96 | version "1.0.10" 97 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 98 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 99 | dependencies: 100 | sprintf-js "~1.0.2" 101 | 102 | ast-parents@0.0.1: 103 | version "0.0.1" 104 | resolved "https://registry.yarnpkg.com/ast-parents/-/ast-parents-0.0.1.tgz#508fd0f05d0c48775d9eccda2e174423261e8dd3" 105 | integrity sha1-UI/Q8F0MSHddnszaLhdEIyYejdM= 106 | 107 | astral-regex@^1.0.0: 108 | version "1.0.0" 109 | resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" 110 | integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== 111 | 112 | balanced-match@^1.0.0: 113 | version "1.0.2" 114 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" 115 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 116 | 117 | brace-expansion@^1.1.7: 118 | version "1.1.11" 119 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 120 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 121 | dependencies: 122 | balanced-match "^1.0.0" 123 | concat-map "0.0.1" 124 | 125 | caller-callsite@^2.0.0: 126 | version "2.0.0" 127 | resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" 128 | integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= 129 | dependencies: 130 | callsites "^2.0.0" 131 | 132 | caller-path@^2.0.0: 133 | version "2.0.0" 134 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" 135 | integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= 136 | dependencies: 137 | caller-callsite "^2.0.0" 138 | 139 | callsites@^2.0.0: 140 | version "2.0.0" 141 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" 142 | integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= 143 | 144 | callsites@^3.0.0: 145 | version "3.1.0" 146 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 147 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 148 | 149 | chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.2: 150 | version "2.4.2" 151 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 152 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 153 | dependencies: 154 | ansi-styles "^3.2.1" 155 | escape-string-regexp "^1.0.5" 156 | supports-color "^5.3.0" 157 | 158 | chardet@^0.7.0: 159 | version "0.7.0" 160 | resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" 161 | integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== 162 | 163 | cli-cursor@^2.1.0: 164 | version "2.1.0" 165 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 166 | integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= 167 | dependencies: 168 | restore-cursor "^2.0.0" 169 | 170 | cli-width@^2.0.0: 171 | version "2.2.1" 172 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" 173 | integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== 174 | 175 | color-convert@^1.9.0: 176 | version "1.9.3" 177 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 178 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 179 | dependencies: 180 | color-name "1.1.3" 181 | 182 | color-name@1.1.3: 183 | version "1.1.3" 184 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 185 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 186 | 187 | commander@2.18.0: 188 | version "2.18.0" 189 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.18.0.tgz#2bf063ddee7c7891176981a2cc798e5754bc6970" 190 | integrity sha512-6CYPa+JP2ftfRU2qkDK+UTVeQYosOg/2GbcjIcKPHfinyOLPVGXu/ovN86RP49Re5ndJK1N0kuiidFFuepc4ZQ== 191 | 192 | concat-map@0.0.1: 193 | version "0.0.1" 194 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 195 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 196 | 197 | cosmiconfig@^5.0.7: 198 | version "5.2.1" 199 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" 200 | integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== 201 | dependencies: 202 | import-fresh "^2.0.0" 203 | is-directory "^0.3.1" 204 | js-yaml "^3.13.1" 205 | parse-json "^4.0.0" 206 | 207 | cross-spawn@^6.0.5: 208 | version "6.0.5" 209 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 210 | integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== 211 | dependencies: 212 | nice-try "^1.0.4" 213 | path-key "^2.0.1" 214 | semver "^5.5.0" 215 | shebang-command "^1.2.0" 216 | which "^1.2.9" 217 | 218 | debug@^4.0.1: 219 | version "4.3.4" 220 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" 221 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== 222 | dependencies: 223 | ms "2.1.2" 224 | 225 | deep-is@~0.1.3: 226 | version "0.1.4" 227 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" 228 | integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== 229 | 230 | doctrine@^3.0.0: 231 | version "3.0.0" 232 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" 233 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 234 | dependencies: 235 | esutils "^2.0.2" 236 | 237 | emoji-regex@^10.0.0: 238 | version "10.0.1" 239 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.0.1.tgz#77180edb279b99510a21b79b19e1dc283d8f3991" 240 | integrity sha512-cLuZzriSWVE+rllzeq4zpUEoCPfYEbQ6ZVhIq+ed6ynWST7Bw9XnOr+bKWgCup4paq72DI21gw9M3aaFkm4HAw== 241 | 242 | emoji-regex@^7.0.1: 243 | version "7.0.3" 244 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 245 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 246 | 247 | emoji-regex@^8.0.0: 248 | version "8.0.0" 249 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" 250 | integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== 251 | 252 | error-ex@^1.3.1: 253 | version "1.3.2" 254 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 255 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 256 | dependencies: 257 | is-arrayish "^0.2.1" 258 | 259 | escape-string-regexp@^1.0.5: 260 | version "1.0.5" 261 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 262 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 263 | 264 | escape-string-regexp@^4.0.0: 265 | version "4.0.0" 266 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" 267 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 268 | 269 | eslint-scope@^4.0.3: 270 | version "4.0.3" 271 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" 272 | integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== 273 | dependencies: 274 | esrecurse "^4.1.0" 275 | estraverse "^4.1.1" 276 | 277 | eslint-utils@^1.3.1: 278 | version "1.4.3" 279 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" 280 | integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== 281 | dependencies: 282 | eslint-visitor-keys "^1.1.0" 283 | 284 | eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: 285 | version "1.3.0" 286 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" 287 | integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== 288 | 289 | eslint@^5.6.0: 290 | version "5.16.0" 291 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz#a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea" 292 | integrity sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg== 293 | dependencies: 294 | "@babel/code-frame" "^7.0.0" 295 | ajv "^6.9.1" 296 | chalk "^2.1.0" 297 | cross-spawn "^6.0.5" 298 | debug "^4.0.1" 299 | doctrine "^3.0.0" 300 | eslint-scope "^4.0.3" 301 | eslint-utils "^1.3.1" 302 | eslint-visitor-keys "^1.0.0" 303 | espree "^5.0.1" 304 | esquery "^1.0.1" 305 | esutils "^2.0.2" 306 | file-entry-cache "^5.0.1" 307 | functional-red-black-tree "^1.0.1" 308 | glob "^7.1.2" 309 | globals "^11.7.0" 310 | ignore "^4.0.6" 311 | import-fresh "^3.0.0" 312 | imurmurhash "^0.1.4" 313 | inquirer "^6.2.2" 314 | js-yaml "^3.13.0" 315 | json-stable-stringify-without-jsonify "^1.0.1" 316 | levn "^0.3.0" 317 | lodash "^4.17.11" 318 | minimatch "^3.0.4" 319 | mkdirp "^0.5.1" 320 | natural-compare "^1.4.0" 321 | optionator "^0.8.2" 322 | path-is-inside "^1.0.2" 323 | progress "^2.0.0" 324 | regexpp "^2.0.1" 325 | semver "^5.5.1" 326 | strip-ansi "^4.0.0" 327 | strip-json-comments "^2.0.1" 328 | table "^5.2.3" 329 | text-table "^0.2.0" 330 | 331 | espree@^5.0.1: 332 | version "5.0.1" 333 | resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz#5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a" 334 | integrity sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A== 335 | dependencies: 336 | acorn "^6.0.7" 337 | acorn-jsx "^5.0.0" 338 | eslint-visitor-keys "^1.0.0" 339 | 340 | esprima@^4.0.0: 341 | version "4.0.1" 342 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 343 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 344 | 345 | esquery@^1.0.1: 346 | version "1.4.0" 347 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" 348 | integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== 349 | dependencies: 350 | estraverse "^5.1.0" 351 | 352 | esrecurse@^4.1.0: 353 | version "4.3.0" 354 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" 355 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 356 | dependencies: 357 | estraverse "^5.2.0" 358 | 359 | estraverse@^4.1.1: 360 | version "4.3.0" 361 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" 362 | integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== 363 | 364 | estraverse@^5.1.0, estraverse@^5.2.0: 365 | version "5.3.0" 366 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" 367 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== 368 | 369 | esutils@^2.0.2: 370 | version "2.0.3" 371 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 372 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 373 | 374 | external-editor@^3.0.3: 375 | version "3.1.0" 376 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" 377 | integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== 378 | dependencies: 379 | chardet "^0.7.0" 380 | iconv-lite "^0.4.24" 381 | tmp "^0.0.33" 382 | 383 | fast-deep-equal@^3.1.1: 384 | version "3.1.3" 385 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" 386 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 387 | 388 | fast-diff@^1.1.2: 389 | version "1.2.0" 390 | resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" 391 | integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== 392 | 393 | fast-json-stable-stringify@^2.0.0: 394 | version "2.1.0" 395 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" 396 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 397 | 398 | fast-levenshtein@~2.0.6: 399 | version "2.0.6" 400 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 401 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 402 | 403 | figures@^2.0.0: 404 | version "2.0.0" 405 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 406 | integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= 407 | dependencies: 408 | escape-string-regexp "^1.0.5" 409 | 410 | file-entry-cache@^5.0.1: 411 | version "5.0.1" 412 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" 413 | integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== 414 | dependencies: 415 | flat-cache "^2.0.1" 416 | 417 | flat-cache@^2.0.1: 418 | version "2.0.1" 419 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" 420 | integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== 421 | dependencies: 422 | flatted "^2.0.0" 423 | rimraf "2.6.3" 424 | write "1.0.3" 425 | 426 | flatted@^2.0.0: 427 | version "2.0.2" 428 | resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" 429 | integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== 430 | 431 | fs.realpath@^1.0.0: 432 | version "1.0.0" 433 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 434 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 435 | 436 | functional-red-black-tree@^1.0.1: 437 | version "1.0.1" 438 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 439 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= 440 | 441 | glob@^7.1.2, glob@^7.1.3: 442 | version "7.2.0" 443 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" 444 | integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== 445 | dependencies: 446 | fs.realpath "^1.0.0" 447 | inflight "^1.0.4" 448 | inherits "2" 449 | minimatch "^3.0.4" 450 | once "^1.3.0" 451 | path-is-absolute "^1.0.0" 452 | 453 | globals@^11.7.0: 454 | version "11.12.0" 455 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 456 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 457 | 458 | has-flag@^3.0.0: 459 | version "3.0.0" 460 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 461 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 462 | 463 | iconv-lite@^0.4.24: 464 | version "0.4.24" 465 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 466 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 467 | dependencies: 468 | safer-buffer ">= 2.1.2 < 3" 469 | 470 | ignore@^4.0.6: 471 | version "4.0.6" 472 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" 473 | integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== 474 | 475 | import-fresh@^2.0.0: 476 | version "2.0.0" 477 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" 478 | integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= 479 | dependencies: 480 | caller-path "^2.0.0" 481 | resolve-from "^3.0.0" 482 | 483 | import-fresh@^3.0.0: 484 | version "3.3.0" 485 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" 486 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== 487 | dependencies: 488 | parent-module "^1.0.0" 489 | resolve-from "^4.0.0" 490 | 491 | imurmurhash@^0.1.4: 492 | version "0.1.4" 493 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 494 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 495 | 496 | inflight@^1.0.4: 497 | version "1.0.6" 498 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 499 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 500 | dependencies: 501 | once "^1.3.0" 502 | wrappy "1" 503 | 504 | inherits@2: 505 | version "2.0.4" 506 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 507 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 508 | 509 | inquirer@^6.2.2: 510 | version "6.5.2" 511 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" 512 | integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== 513 | dependencies: 514 | ansi-escapes "^3.2.0" 515 | chalk "^2.4.2" 516 | cli-cursor "^2.1.0" 517 | cli-width "^2.0.0" 518 | external-editor "^3.0.3" 519 | figures "^2.0.0" 520 | lodash "^4.17.12" 521 | mute-stream "0.0.7" 522 | run-async "^2.2.0" 523 | rxjs "^6.4.0" 524 | string-width "^2.1.0" 525 | strip-ansi "^5.1.0" 526 | through "^2.3.6" 527 | 528 | is-arrayish@^0.2.1: 529 | version "0.2.1" 530 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 531 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 532 | 533 | is-directory@^0.3.1: 534 | version "0.3.1" 535 | resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" 536 | integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= 537 | 538 | is-fullwidth-code-point@^2.0.0: 539 | version "2.0.0" 540 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 541 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 542 | 543 | is-fullwidth-code-point@^3.0.0: 544 | version "3.0.0" 545 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" 546 | integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== 547 | 548 | isexe@^2.0.0: 549 | version "2.0.0" 550 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 551 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 552 | 553 | js-tokens@^4.0.0: 554 | version "4.0.0" 555 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 556 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 557 | 558 | js-yaml@^3.12.0, js-yaml@^3.13.0, js-yaml@^3.13.1: 559 | version "3.14.1" 560 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" 561 | integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== 562 | dependencies: 563 | argparse "^1.0.7" 564 | esprima "^4.0.0" 565 | 566 | json-parse-better-errors@^1.0.1: 567 | version "1.0.2" 568 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 569 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 570 | 571 | json-schema-traverse@^0.4.1: 572 | version "0.4.1" 573 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 574 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 575 | 576 | json-stable-stringify-without-jsonify@^1.0.1: 577 | version "1.0.1" 578 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 579 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= 580 | 581 | levn@^0.3.0, levn@~0.3.0: 582 | version "0.3.0" 583 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" 584 | integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= 585 | dependencies: 586 | prelude-ls "~1.1.2" 587 | type-check "~0.3.2" 588 | 589 | lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14: 590 | version "4.17.21" 591 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 592 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 593 | 594 | lru-cache@^6.0.0: 595 | version "6.0.0" 596 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" 597 | integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== 598 | dependencies: 599 | yallist "^4.0.0" 600 | 601 | mimic-fn@^1.0.0: 602 | version "1.2.0" 603 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" 604 | integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== 605 | 606 | minimatch@^3.0.4: 607 | version "3.1.2" 608 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" 609 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== 610 | dependencies: 611 | brace-expansion "^1.1.7" 612 | 613 | minimist@^1.2.6: 614 | version "1.2.6" 615 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" 616 | integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== 617 | 618 | mkdirp@^0.5.1: 619 | version "0.5.6" 620 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" 621 | integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== 622 | dependencies: 623 | minimist "^1.2.6" 624 | 625 | ms@2.1.2: 626 | version "2.1.2" 627 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 628 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 629 | 630 | mute-stream@0.0.7: 631 | version "0.0.7" 632 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 633 | integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= 634 | 635 | natural-compare@^1.4.0: 636 | version "1.4.0" 637 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 638 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 639 | 640 | nice-try@^1.0.4: 641 | version "1.0.5" 642 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 643 | integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== 644 | 645 | once@^1.3.0: 646 | version "1.4.0" 647 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 648 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 649 | dependencies: 650 | wrappy "1" 651 | 652 | onetime@^2.0.0: 653 | version "2.0.1" 654 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 655 | integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= 656 | dependencies: 657 | mimic-fn "^1.0.0" 658 | 659 | optionator@^0.8.2: 660 | version "0.8.3" 661 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" 662 | integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== 663 | dependencies: 664 | deep-is "~0.1.3" 665 | fast-levenshtein "~2.0.6" 666 | levn "~0.3.0" 667 | prelude-ls "~1.1.2" 668 | type-check "~0.3.2" 669 | word-wrap "~1.2.3" 670 | 671 | os-tmpdir@~1.0.2: 672 | version "1.0.2" 673 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 674 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 675 | 676 | parent-module@^1.0.0: 677 | version "1.0.1" 678 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 679 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 680 | dependencies: 681 | callsites "^3.0.0" 682 | 683 | parse-json@^4.0.0: 684 | version "4.0.0" 685 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" 686 | integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= 687 | dependencies: 688 | error-ex "^1.3.1" 689 | json-parse-better-errors "^1.0.1" 690 | 691 | path-is-absolute@^1.0.0: 692 | version "1.0.1" 693 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 694 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 695 | 696 | path-is-inside@^1.0.2: 697 | version "1.0.2" 698 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 699 | integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= 700 | 701 | path-key@^2.0.1: 702 | version "2.0.1" 703 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 704 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 705 | 706 | prelude-ls@~1.1.2: 707 | version "1.1.2" 708 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" 709 | integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= 710 | 711 | prettier-plugin-solidity@^1.0.0-beta.19: 712 | version "1.0.0-beta.19" 713 | resolved "https://registry.yarnpkg.com/prettier-plugin-solidity/-/prettier-plugin-solidity-1.0.0-beta.19.tgz#7c3607fc4028f5e6a425259ff03e45eedf733df3" 714 | integrity sha512-xxRQ5ZiiZyUoMFLE9h7HnUDXI/daf1tnmL1msEdcKmyh7ZGQ4YklkYLC71bfBpYU2WruTb5/SFLUaEb3RApg5g== 715 | dependencies: 716 | "@solidity-parser/parser" "^0.14.0" 717 | emoji-regex "^10.0.0" 718 | escape-string-regexp "^4.0.0" 719 | semver "^7.3.5" 720 | solidity-comments-extractor "^0.0.7" 721 | string-width "^4.2.3" 722 | 723 | prettier@^1.14.3: 724 | version "1.19.1" 725 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" 726 | integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== 727 | 728 | prettier@^2.5.1: 729 | version "2.6.1" 730 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.1.tgz#d472797e0d7461605c1609808e27b80c0f9cfe17" 731 | integrity sha512-8UVbTBYGwN37Bs9LERmxCPjdvPxlEowx2urIL6urHzdb3SDq4B/Z6xLFCblrSnE4iKWcS6ziJ3aOYrc1kz/E2A== 732 | 733 | progress@^2.0.0: 734 | version "2.0.3" 735 | resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" 736 | integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== 737 | 738 | punycode@^2.1.0: 739 | version "2.1.1" 740 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 741 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 742 | 743 | regexpp@^2.0.1: 744 | version "2.0.1" 745 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" 746 | integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== 747 | 748 | resolve-from@^3.0.0: 749 | version "3.0.0" 750 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" 751 | integrity sha1-six699nWiBvItuZTM17rywoYh0g= 752 | 753 | resolve-from@^4.0.0: 754 | version "4.0.0" 755 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 756 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 757 | 758 | restore-cursor@^2.0.0: 759 | version "2.0.0" 760 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 761 | integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= 762 | dependencies: 763 | onetime "^2.0.0" 764 | signal-exit "^3.0.2" 765 | 766 | rimraf@2.6.3: 767 | version "2.6.3" 768 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" 769 | integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== 770 | dependencies: 771 | glob "^7.1.3" 772 | 773 | run-async@^2.2.0: 774 | version "2.4.1" 775 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" 776 | integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== 777 | 778 | rxjs@^6.4.0: 779 | version "6.6.7" 780 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" 781 | integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== 782 | dependencies: 783 | tslib "^1.9.0" 784 | 785 | "safer-buffer@>= 2.1.2 < 3": 786 | version "2.1.2" 787 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 788 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 789 | 790 | semver@^5.5.0, semver@^5.5.1: 791 | version "5.7.1" 792 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 793 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 794 | 795 | semver@^6.3.0: 796 | version "6.3.0" 797 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 798 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 799 | 800 | semver@^7.3.5: 801 | version "7.3.5" 802 | resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" 803 | integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== 804 | dependencies: 805 | lru-cache "^6.0.0" 806 | 807 | shebang-command@^1.2.0: 808 | version "1.2.0" 809 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 810 | integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= 811 | dependencies: 812 | shebang-regex "^1.0.0" 813 | 814 | shebang-regex@^1.0.0: 815 | version "1.0.0" 816 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 817 | integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= 818 | 819 | signal-exit@^3.0.2: 820 | version "3.0.7" 821 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" 822 | integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== 823 | 824 | slice-ansi@^2.1.0: 825 | version "2.1.0" 826 | resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" 827 | integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== 828 | dependencies: 829 | ansi-styles "^3.2.0" 830 | astral-regex "^1.0.0" 831 | is-fullwidth-code-point "^2.0.0" 832 | 833 | solhint@^3.3.6: 834 | version "3.3.7" 835 | resolved "https://registry.yarnpkg.com/solhint/-/solhint-3.3.7.tgz#b5da4fedf7a0fee954cb613b6c55a5a2b0063aa7" 836 | integrity sha512-NjjjVmXI3ehKkb3aNtRJWw55SUVJ8HMKKodwe0HnejA+k0d2kmhw7jvpa+MCTbcEgt8IWSwx0Hu6aCo/iYOZzQ== 837 | dependencies: 838 | "@solidity-parser/parser" "^0.14.1" 839 | ajv "^6.6.1" 840 | antlr4 "4.7.1" 841 | ast-parents "0.0.1" 842 | chalk "^2.4.2" 843 | commander "2.18.0" 844 | cosmiconfig "^5.0.7" 845 | eslint "^5.6.0" 846 | fast-diff "^1.1.2" 847 | glob "^7.1.3" 848 | ignore "^4.0.6" 849 | js-yaml "^3.12.0" 850 | lodash "^4.17.11" 851 | semver "^6.3.0" 852 | optionalDependencies: 853 | prettier "^1.14.3" 854 | 855 | solidity-comments-extractor@^0.0.7: 856 | version "0.0.7" 857 | resolved "https://registry.yarnpkg.com/solidity-comments-extractor/-/solidity-comments-extractor-0.0.7.tgz#99d8f1361438f84019795d928b931f4e5c39ca19" 858 | integrity sha512-wciNMLg/Irp8OKGrh3S2tfvZiZ0NEyILfcRCXCD4mp7SgK/i9gzLfhY2hY7VMCQJ3kH9UB9BzNdibIVMchzyYw== 859 | 860 | sprintf-js@~1.0.2: 861 | version "1.0.3" 862 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 863 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 864 | 865 | string-width@^2.1.0: 866 | version "2.1.1" 867 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 868 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 869 | dependencies: 870 | is-fullwidth-code-point "^2.0.0" 871 | strip-ansi "^4.0.0" 872 | 873 | string-width@^3.0.0: 874 | version "3.1.0" 875 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 876 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 877 | dependencies: 878 | emoji-regex "^7.0.1" 879 | is-fullwidth-code-point "^2.0.0" 880 | strip-ansi "^5.1.0" 881 | 882 | string-width@^4.2.3: 883 | version "4.2.3" 884 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" 885 | integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== 886 | dependencies: 887 | emoji-regex "^8.0.0" 888 | is-fullwidth-code-point "^3.0.0" 889 | strip-ansi "^6.0.1" 890 | 891 | strip-ansi@^4.0.0: 892 | version "4.0.0" 893 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 894 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 895 | dependencies: 896 | ansi-regex "^3.0.0" 897 | 898 | strip-ansi@^5.1.0: 899 | version "5.2.0" 900 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 901 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 902 | dependencies: 903 | ansi-regex "^4.1.0" 904 | 905 | strip-ansi@^6.0.1: 906 | version "6.0.1" 907 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" 908 | integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== 909 | dependencies: 910 | ansi-regex "^5.0.1" 911 | 912 | strip-json-comments@^2.0.1: 913 | version "2.0.1" 914 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 915 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= 916 | 917 | supports-color@^5.3.0: 918 | version "5.5.0" 919 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 920 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 921 | dependencies: 922 | has-flag "^3.0.0" 923 | 924 | table@^5.2.3: 925 | version "5.4.6" 926 | resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" 927 | integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== 928 | dependencies: 929 | ajv "^6.10.2" 930 | lodash "^4.17.14" 931 | slice-ansi "^2.1.0" 932 | string-width "^3.0.0" 933 | 934 | text-table@^0.2.0: 935 | version "0.2.0" 936 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 937 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 938 | 939 | through@^2.3.6: 940 | version "2.3.8" 941 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 942 | integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= 943 | 944 | tmp@^0.0.33: 945 | version "0.0.33" 946 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" 947 | integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== 948 | dependencies: 949 | os-tmpdir "~1.0.2" 950 | 951 | tslib@^1.9.0: 952 | version "1.14.1" 953 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" 954 | integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== 955 | 956 | type-check@~0.3.2: 957 | version "0.3.2" 958 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" 959 | integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= 960 | dependencies: 961 | prelude-ls "~1.1.2" 962 | 963 | uri-js@^4.2.2: 964 | version "4.4.1" 965 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" 966 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== 967 | dependencies: 968 | punycode "^2.1.0" 969 | 970 | which@^1.2.9: 971 | version "1.3.1" 972 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 973 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 974 | dependencies: 975 | isexe "^2.0.0" 976 | 977 | word-wrap@~1.2.3: 978 | version "1.2.3" 979 | resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" 980 | integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== 981 | 982 | wrappy@1: 983 | version "1.0.2" 984 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 985 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 986 | 987 | write@1.0.3: 988 | version "1.0.3" 989 | resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" 990 | integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== 991 | dependencies: 992 | mkdirp "^0.5.1" 993 | 994 | yallist@^4.0.0: 995 | version "4.0.0" 996 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" 997 | integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== 998 | -------------------------------------------------------------------------------- /src/test/utils/Console.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity >=0.8.0; 3 | 4 | /* solhint-disable */ 5 | library console { 6 | address constant CONSOLE_ADDRESS = 7 | address(0x000000000000000000636F6e736F6c652e6c6f67); 8 | 9 | function _sendLogPayload(bytes memory payload) private view { 10 | uint256 payloadLength = payload.length; 11 | address consoleAddress = CONSOLE_ADDRESS; 12 | assembly { 13 | let payloadStart := add(payload, 32) 14 | let r := staticcall( 15 | gas(), 16 | consoleAddress, 17 | payloadStart, 18 | payloadLength, 19 | 0, 20 | 0 21 | ) 22 | } 23 | } 24 | 25 | function log() internal view { 26 | _sendLogPayload(abi.encodeWithSignature("log()")); 27 | } 28 | 29 | function logInt(int256 p0) internal view { 30 | _sendLogPayload(abi.encodeWithSignature("log(int)", p0)); 31 | } 32 | 33 | function logUint(uint256 p0) internal view { 34 | _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); 35 | } 36 | 37 | function logString(string memory p0) internal view { 38 | _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); 39 | } 40 | 41 | function logBool(bool p0) internal view { 42 | _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); 43 | } 44 | 45 | function logAddress(address p0) internal view { 46 | _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); 47 | } 48 | 49 | function logBytes(bytes memory p0) internal view { 50 | _sendLogPayload(abi.encodeWithSignature("log(bytes)", p0)); 51 | } 52 | 53 | function logBytes1(bytes1 p0) internal view { 54 | _sendLogPayload(abi.encodeWithSignature("log(bytes1)", p0)); 55 | } 56 | 57 | function logBytes2(bytes2 p0) internal view { 58 | _sendLogPayload(abi.encodeWithSignature("log(bytes2)", p0)); 59 | } 60 | 61 | function logBytes3(bytes3 p0) internal view { 62 | _sendLogPayload(abi.encodeWithSignature("log(bytes3)", p0)); 63 | } 64 | 65 | function logBytes4(bytes4 p0) internal view { 66 | _sendLogPayload(abi.encodeWithSignature("log(bytes4)", p0)); 67 | } 68 | 69 | function logBytes5(bytes5 p0) internal view { 70 | _sendLogPayload(abi.encodeWithSignature("log(bytes5)", p0)); 71 | } 72 | 73 | function logBytes6(bytes6 p0) internal view { 74 | _sendLogPayload(abi.encodeWithSignature("log(bytes6)", p0)); 75 | } 76 | 77 | function logBytes7(bytes7 p0) internal view { 78 | _sendLogPayload(abi.encodeWithSignature("log(bytes7)", p0)); 79 | } 80 | 81 | function logBytes8(bytes8 p0) internal view { 82 | _sendLogPayload(abi.encodeWithSignature("log(bytes8)", p0)); 83 | } 84 | 85 | function logBytes9(bytes9 p0) internal view { 86 | _sendLogPayload(abi.encodeWithSignature("log(bytes9)", p0)); 87 | } 88 | 89 | function logBytes10(bytes10 p0) internal view { 90 | _sendLogPayload(abi.encodeWithSignature("log(bytes10)", p0)); 91 | } 92 | 93 | function logBytes11(bytes11 p0) internal view { 94 | _sendLogPayload(abi.encodeWithSignature("log(bytes11)", p0)); 95 | } 96 | 97 | function logBytes12(bytes12 p0) internal view { 98 | _sendLogPayload(abi.encodeWithSignature("log(bytes12)", p0)); 99 | } 100 | 101 | function logBytes13(bytes13 p0) internal view { 102 | _sendLogPayload(abi.encodeWithSignature("log(bytes13)", p0)); 103 | } 104 | 105 | function logBytes14(bytes14 p0) internal view { 106 | _sendLogPayload(abi.encodeWithSignature("log(bytes14)", p0)); 107 | } 108 | 109 | function logBytes15(bytes15 p0) internal view { 110 | _sendLogPayload(abi.encodeWithSignature("log(bytes15)", p0)); 111 | } 112 | 113 | function logBytes16(bytes16 p0) internal view { 114 | _sendLogPayload(abi.encodeWithSignature("log(bytes16)", p0)); 115 | } 116 | 117 | function logBytes17(bytes17 p0) internal view { 118 | _sendLogPayload(abi.encodeWithSignature("log(bytes17)", p0)); 119 | } 120 | 121 | function logBytes18(bytes18 p0) internal view { 122 | _sendLogPayload(abi.encodeWithSignature("log(bytes18)", p0)); 123 | } 124 | 125 | function logBytes19(bytes19 p0) internal view { 126 | _sendLogPayload(abi.encodeWithSignature("log(bytes19)", p0)); 127 | } 128 | 129 | function logBytes20(bytes20 p0) internal view { 130 | _sendLogPayload(abi.encodeWithSignature("log(bytes20)", p0)); 131 | } 132 | 133 | function logBytes21(bytes21 p0) internal view { 134 | _sendLogPayload(abi.encodeWithSignature("log(bytes21)", p0)); 135 | } 136 | 137 | function logBytes22(bytes22 p0) internal view { 138 | _sendLogPayload(abi.encodeWithSignature("log(bytes22)", p0)); 139 | } 140 | 141 | function logBytes23(bytes23 p0) internal view { 142 | _sendLogPayload(abi.encodeWithSignature("log(bytes23)", p0)); 143 | } 144 | 145 | function logBytes24(bytes24 p0) internal view { 146 | _sendLogPayload(abi.encodeWithSignature("log(bytes24)", p0)); 147 | } 148 | 149 | function logBytes25(bytes25 p0) internal view { 150 | _sendLogPayload(abi.encodeWithSignature("log(bytes25)", p0)); 151 | } 152 | 153 | function logBytes26(bytes26 p0) internal view { 154 | _sendLogPayload(abi.encodeWithSignature("log(bytes26)", p0)); 155 | } 156 | 157 | function logBytes27(bytes27 p0) internal view { 158 | _sendLogPayload(abi.encodeWithSignature("log(bytes27)", p0)); 159 | } 160 | 161 | function logBytes28(bytes28 p0) internal view { 162 | _sendLogPayload(abi.encodeWithSignature("log(bytes28)", p0)); 163 | } 164 | 165 | function logBytes29(bytes29 p0) internal view { 166 | _sendLogPayload(abi.encodeWithSignature("log(bytes29)", p0)); 167 | } 168 | 169 | function logBytes30(bytes30 p0) internal view { 170 | _sendLogPayload(abi.encodeWithSignature("log(bytes30)", p0)); 171 | } 172 | 173 | function logBytes31(bytes31 p0) internal view { 174 | _sendLogPayload(abi.encodeWithSignature("log(bytes31)", p0)); 175 | } 176 | 177 | function logBytes32(bytes32 p0) internal view { 178 | _sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0)); 179 | } 180 | 181 | function log(bytes32[] memory p0) internal view { 182 | for (uint256 i; i < p0.length; ) { 183 | _sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0[i])); 184 | unchecked { 185 | ++i; 186 | } 187 | } 188 | } 189 | 190 | function log(uint256 p0) internal view { 191 | _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); 192 | } 193 | 194 | function log(uint256[] memory p0) internal view { 195 | for (uint256 i; i < p0.length; ) { 196 | _sendLogPayload(abi.encodeWithSignature("log(uint)", p0[i])); 197 | unchecked { 198 | ++i; 199 | } 200 | } 201 | } 202 | 203 | function log(string memory p0) internal view { 204 | _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); 205 | } 206 | 207 | function log(string[] memory p0) internal view { 208 | for (uint256 i; i < p0.length; ) { 209 | _sendLogPayload(abi.encodeWithSignature("log(string)", p0[i])); 210 | unchecked { 211 | ++i; 212 | } 213 | } 214 | } 215 | 216 | function log(bool p0) internal view { 217 | _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); 218 | } 219 | 220 | function log(bool[] memory p0) internal view { 221 | for (uint256 i; i < p0.length; ) { 222 | _sendLogPayload(abi.encodeWithSignature("log(bool)", p0[i])); 223 | unchecked { 224 | ++i; 225 | } 226 | } 227 | } 228 | 229 | function log(address p0) internal view { 230 | _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); 231 | } 232 | 233 | function log(address[] memory p0) internal view { 234 | for (uint256 i; i < p0.length; ) { 235 | _sendLogPayload(abi.encodeWithSignature("log(address)", p0[i])); 236 | unchecked { 237 | ++i; 238 | } 239 | } 240 | } 241 | 242 | function log(uint256 p0, uint256 p1) internal view { 243 | _sendLogPayload(abi.encodeWithSignature("log(uint,uint)", p0, p1)); 244 | } 245 | 246 | function log(uint256 p0, string memory p1) internal view { 247 | _sendLogPayload(abi.encodeWithSignature("log(uint,string)", p0, p1)); 248 | } 249 | 250 | function log(uint256 p0, bool p1) internal view { 251 | _sendLogPayload(abi.encodeWithSignature("log(uint,bool)", p0, p1)); 252 | } 253 | 254 | function log(uint256 p0, address p1) internal view { 255 | _sendLogPayload(abi.encodeWithSignature("log(uint,address)", p0, p1)); 256 | } 257 | 258 | function log(string memory p0, uint256 p1) internal view { 259 | _sendLogPayload(abi.encodeWithSignature("log(string,uint)", p0, p1)); 260 | } 261 | 262 | function log(string memory p0, string memory p1) internal view { 263 | _sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1)); 264 | } 265 | 266 | function log(string memory p0, bool p1) internal view { 267 | _sendLogPayload(abi.encodeWithSignature("log(string,bool)", p0, p1)); 268 | } 269 | 270 | function log(string memory p0, address p1) internal view { 271 | _sendLogPayload(abi.encodeWithSignature("log(string,address)", p0, p1)); 272 | } 273 | 274 | function log(bool p0, uint256 p1) internal view { 275 | _sendLogPayload(abi.encodeWithSignature("log(bool,uint)", p0, p1)); 276 | } 277 | 278 | function log(bool p0, string memory p1) internal view { 279 | _sendLogPayload(abi.encodeWithSignature("log(bool,string)", p0, p1)); 280 | } 281 | 282 | function log(bool p0, bool p1) internal view { 283 | _sendLogPayload(abi.encodeWithSignature("log(bool,bool)", p0, p1)); 284 | } 285 | 286 | function log(bool p0, address p1) internal view { 287 | _sendLogPayload(abi.encodeWithSignature("log(bool,address)", p0, p1)); 288 | } 289 | 290 | function log(address p0, uint256 p1) internal view { 291 | _sendLogPayload(abi.encodeWithSignature("log(address,uint)", p0, p1)); 292 | } 293 | 294 | function log(address p0, string memory p1) internal view { 295 | _sendLogPayload(abi.encodeWithSignature("log(address,string)", p0, p1)); 296 | } 297 | 298 | function log(address p0, bool p1) internal view { 299 | _sendLogPayload(abi.encodeWithSignature("log(address,bool)", p0, p1)); 300 | } 301 | 302 | function log(address p0, address p1) internal view { 303 | _sendLogPayload( 304 | abi.encodeWithSignature("log(address,address)", p0, p1) 305 | ); 306 | } 307 | 308 | function log( 309 | uint256 p0, 310 | uint256 p1, 311 | uint256 p2 312 | ) internal view { 313 | _sendLogPayload( 314 | abi.encodeWithSignature("log(uint,uint,uint)", p0, p1, p2) 315 | ); 316 | } 317 | 318 | function log( 319 | uint256 p0, 320 | uint256 p1, 321 | string memory p2 322 | ) internal view { 323 | _sendLogPayload( 324 | abi.encodeWithSignature("log(uint,uint,string)", p0, p1, p2) 325 | ); 326 | } 327 | 328 | function log( 329 | uint256 p0, 330 | uint256 p1, 331 | bool p2 332 | ) internal view { 333 | _sendLogPayload( 334 | abi.encodeWithSignature("log(uint,uint,bool)", p0, p1, p2) 335 | ); 336 | } 337 | 338 | function log( 339 | uint256 p0, 340 | uint256 p1, 341 | address p2 342 | ) internal view { 343 | _sendLogPayload( 344 | abi.encodeWithSignature("log(uint,uint,address)", p0, p1, p2) 345 | ); 346 | } 347 | 348 | function log( 349 | uint256 p0, 350 | string memory p1, 351 | uint256 p2 352 | ) internal view { 353 | _sendLogPayload( 354 | abi.encodeWithSignature("log(uint,string,uint)", p0, p1, p2) 355 | ); 356 | } 357 | 358 | function log( 359 | uint256 p0, 360 | string memory p1, 361 | string memory p2 362 | ) internal view { 363 | _sendLogPayload( 364 | abi.encodeWithSignature("log(uint,string,string)", p0, p1, p2) 365 | ); 366 | } 367 | 368 | function log( 369 | uint256 p0, 370 | string memory p1, 371 | bool p2 372 | ) internal view { 373 | _sendLogPayload( 374 | abi.encodeWithSignature("log(uint,string,bool)", p0, p1, p2) 375 | ); 376 | } 377 | 378 | function log( 379 | uint256 p0, 380 | string memory p1, 381 | address p2 382 | ) internal view { 383 | _sendLogPayload( 384 | abi.encodeWithSignature("log(uint,string,address)", p0, p1, p2) 385 | ); 386 | } 387 | 388 | function log( 389 | uint256 p0, 390 | bool p1, 391 | uint256 p2 392 | ) internal view { 393 | _sendLogPayload( 394 | abi.encodeWithSignature("log(uint,bool,uint)", p0, p1, p2) 395 | ); 396 | } 397 | 398 | function log( 399 | uint256 p0, 400 | bool p1, 401 | string memory p2 402 | ) internal view { 403 | _sendLogPayload( 404 | abi.encodeWithSignature("log(uint,bool,string)", p0, p1, p2) 405 | ); 406 | } 407 | 408 | function log( 409 | uint256 p0, 410 | bool p1, 411 | bool p2 412 | ) internal view { 413 | _sendLogPayload( 414 | abi.encodeWithSignature("log(uint,bool,bool)", p0, p1, p2) 415 | ); 416 | } 417 | 418 | function log( 419 | uint256 p0, 420 | bool p1, 421 | address p2 422 | ) internal view { 423 | _sendLogPayload( 424 | abi.encodeWithSignature("log(uint,bool,address)", p0, p1, p2) 425 | ); 426 | } 427 | 428 | function log( 429 | uint256 p0, 430 | address p1, 431 | uint256 p2 432 | ) internal view { 433 | _sendLogPayload( 434 | abi.encodeWithSignature("log(uint,address,uint)", p0, p1, p2) 435 | ); 436 | } 437 | 438 | function log( 439 | uint256 p0, 440 | address p1, 441 | string memory p2 442 | ) internal view { 443 | _sendLogPayload( 444 | abi.encodeWithSignature("log(uint,address,string)", p0, p1, p2) 445 | ); 446 | } 447 | 448 | function log( 449 | uint256 p0, 450 | address p1, 451 | bool p2 452 | ) internal view { 453 | _sendLogPayload( 454 | abi.encodeWithSignature("log(uint,address,bool)", p0, p1, p2) 455 | ); 456 | } 457 | 458 | function log( 459 | uint256 p0, 460 | address p1, 461 | address p2 462 | ) internal view { 463 | _sendLogPayload( 464 | abi.encodeWithSignature("log(uint,address,address)", p0, p1, p2) 465 | ); 466 | } 467 | 468 | function log( 469 | string memory p0, 470 | uint256 p1, 471 | uint256 p2 472 | ) internal view { 473 | _sendLogPayload( 474 | abi.encodeWithSignature("log(string,uint,uint)", p0, p1, p2) 475 | ); 476 | } 477 | 478 | function log( 479 | string memory p0, 480 | uint256 p1, 481 | string memory p2 482 | ) internal view { 483 | _sendLogPayload( 484 | abi.encodeWithSignature("log(string,uint,string)", p0, p1, p2) 485 | ); 486 | } 487 | 488 | function log( 489 | string memory p0, 490 | uint256 p1, 491 | bool p2 492 | ) internal view { 493 | _sendLogPayload( 494 | abi.encodeWithSignature("log(string,uint,bool)", p0, p1, p2) 495 | ); 496 | } 497 | 498 | function log( 499 | string memory p0, 500 | uint256 p1, 501 | address p2 502 | ) internal view { 503 | _sendLogPayload( 504 | abi.encodeWithSignature("log(string,uint,address)", p0, p1, p2) 505 | ); 506 | } 507 | 508 | function log( 509 | string memory p0, 510 | string memory p1, 511 | uint256 p2 512 | ) internal view { 513 | _sendLogPayload( 514 | abi.encodeWithSignature("log(string,string,uint)", p0, p1, p2) 515 | ); 516 | } 517 | 518 | function log( 519 | string memory p0, 520 | string memory p1, 521 | string memory p2 522 | ) internal view { 523 | _sendLogPayload( 524 | abi.encodeWithSignature("log(string,string,string)", p0, p1, p2) 525 | ); 526 | } 527 | 528 | function log( 529 | string memory p0, 530 | string memory p1, 531 | bool p2 532 | ) internal view { 533 | _sendLogPayload( 534 | abi.encodeWithSignature("log(string,string,bool)", p0, p1, p2) 535 | ); 536 | } 537 | 538 | function log( 539 | string memory p0, 540 | string memory p1, 541 | address p2 542 | ) internal view { 543 | _sendLogPayload( 544 | abi.encodeWithSignature("log(string,string,address)", p0, p1, p2) 545 | ); 546 | } 547 | 548 | function log( 549 | string memory p0, 550 | bool p1, 551 | uint256 p2 552 | ) internal view { 553 | _sendLogPayload( 554 | abi.encodeWithSignature("log(string,bool,uint)", p0, p1, p2) 555 | ); 556 | } 557 | 558 | function log( 559 | string memory p0, 560 | bool p1, 561 | string memory p2 562 | ) internal view { 563 | _sendLogPayload( 564 | abi.encodeWithSignature("log(string,bool,string)", p0, p1, p2) 565 | ); 566 | } 567 | 568 | function log( 569 | string memory p0, 570 | bool p1, 571 | bool p2 572 | ) internal view { 573 | _sendLogPayload( 574 | abi.encodeWithSignature("log(string,bool,bool)", p0, p1, p2) 575 | ); 576 | } 577 | 578 | function log( 579 | string memory p0, 580 | bool p1, 581 | address p2 582 | ) internal view { 583 | _sendLogPayload( 584 | abi.encodeWithSignature("log(string,bool,address)", p0, p1, p2) 585 | ); 586 | } 587 | 588 | function log( 589 | string memory p0, 590 | address p1, 591 | uint256 p2 592 | ) internal view { 593 | _sendLogPayload( 594 | abi.encodeWithSignature("log(string,address,uint)", p0, p1, p2) 595 | ); 596 | } 597 | 598 | function log( 599 | string memory p0, 600 | address p1, 601 | string memory p2 602 | ) internal view { 603 | _sendLogPayload( 604 | abi.encodeWithSignature("log(string,address,string)", p0, p1, p2) 605 | ); 606 | } 607 | 608 | function log( 609 | string memory p0, 610 | address p1, 611 | bool p2 612 | ) internal view { 613 | _sendLogPayload( 614 | abi.encodeWithSignature("log(string,address,bool)", p0, p1, p2) 615 | ); 616 | } 617 | 618 | function log( 619 | string memory p0, 620 | address p1, 621 | address p2 622 | ) internal view { 623 | _sendLogPayload( 624 | abi.encodeWithSignature("log(string,address,address)", p0, p1, p2) 625 | ); 626 | } 627 | 628 | function log( 629 | bool p0, 630 | uint256 p1, 631 | uint256 p2 632 | ) internal view { 633 | _sendLogPayload( 634 | abi.encodeWithSignature("log(bool,uint,uint)", p0, p1, p2) 635 | ); 636 | } 637 | 638 | function log( 639 | bool p0, 640 | uint256 p1, 641 | string memory p2 642 | ) internal view { 643 | _sendLogPayload( 644 | abi.encodeWithSignature("log(bool,uint,string)", p0, p1, p2) 645 | ); 646 | } 647 | 648 | function log( 649 | bool p0, 650 | uint256 p1, 651 | bool p2 652 | ) internal view { 653 | _sendLogPayload( 654 | abi.encodeWithSignature("log(bool,uint,bool)", p0, p1, p2) 655 | ); 656 | } 657 | 658 | function log( 659 | bool p0, 660 | uint256 p1, 661 | address p2 662 | ) internal view { 663 | _sendLogPayload( 664 | abi.encodeWithSignature("log(bool,uint,address)", p0, p1, p2) 665 | ); 666 | } 667 | 668 | function log( 669 | bool p0, 670 | string memory p1, 671 | uint256 p2 672 | ) internal view { 673 | _sendLogPayload( 674 | abi.encodeWithSignature("log(bool,string,uint)", p0, p1, p2) 675 | ); 676 | } 677 | 678 | function log( 679 | bool p0, 680 | string memory p1, 681 | string memory p2 682 | ) internal view { 683 | _sendLogPayload( 684 | abi.encodeWithSignature("log(bool,string,string)", p0, p1, p2) 685 | ); 686 | } 687 | 688 | function log( 689 | bool p0, 690 | string memory p1, 691 | bool p2 692 | ) internal view { 693 | _sendLogPayload( 694 | abi.encodeWithSignature("log(bool,string,bool)", p0, p1, p2) 695 | ); 696 | } 697 | 698 | function log( 699 | bool p0, 700 | string memory p1, 701 | address p2 702 | ) internal view { 703 | _sendLogPayload( 704 | abi.encodeWithSignature("log(bool,string,address)", p0, p1, p2) 705 | ); 706 | } 707 | 708 | function log( 709 | bool p0, 710 | bool p1, 711 | uint256 p2 712 | ) internal view { 713 | _sendLogPayload( 714 | abi.encodeWithSignature("log(bool,bool,uint)", p0, p1, p2) 715 | ); 716 | } 717 | 718 | function log( 719 | bool p0, 720 | bool p1, 721 | string memory p2 722 | ) internal view { 723 | _sendLogPayload( 724 | abi.encodeWithSignature("log(bool,bool,string)", p0, p1, p2) 725 | ); 726 | } 727 | 728 | function log( 729 | bool p0, 730 | bool p1, 731 | bool p2 732 | ) internal view { 733 | _sendLogPayload( 734 | abi.encodeWithSignature("log(bool,bool,bool)", p0, p1, p2) 735 | ); 736 | } 737 | 738 | function log( 739 | bool p0, 740 | bool p1, 741 | address p2 742 | ) internal view { 743 | _sendLogPayload( 744 | abi.encodeWithSignature("log(bool,bool,address)", p0, p1, p2) 745 | ); 746 | } 747 | 748 | function log( 749 | bool p0, 750 | address p1, 751 | uint256 p2 752 | ) internal view { 753 | _sendLogPayload( 754 | abi.encodeWithSignature("log(bool,address,uint)", p0, p1, p2) 755 | ); 756 | } 757 | 758 | function log( 759 | bool p0, 760 | address p1, 761 | string memory p2 762 | ) internal view { 763 | _sendLogPayload( 764 | abi.encodeWithSignature("log(bool,address,string)", p0, p1, p2) 765 | ); 766 | } 767 | 768 | function log( 769 | bool p0, 770 | address p1, 771 | bool p2 772 | ) internal view { 773 | _sendLogPayload( 774 | abi.encodeWithSignature("log(bool,address,bool)", p0, p1, p2) 775 | ); 776 | } 777 | 778 | function log( 779 | bool p0, 780 | address p1, 781 | address p2 782 | ) internal view { 783 | _sendLogPayload( 784 | abi.encodeWithSignature("log(bool,address,address)", p0, p1, p2) 785 | ); 786 | } 787 | 788 | function log( 789 | address p0, 790 | uint256 p1, 791 | uint256 p2 792 | ) internal view { 793 | _sendLogPayload( 794 | abi.encodeWithSignature("log(address,uint,uint)", p0, p1, p2) 795 | ); 796 | } 797 | 798 | function log( 799 | address p0, 800 | uint256 p1, 801 | string memory p2 802 | ) internal view { 803 | _sendLogPayload( 804 | abi.encodeWithSignature("log(address,uint,string)", p0, p1, p2) 805 | ); 806 | } 807 | 808 | function log( 809 | address p0, 810 | uint256 p1, 811 | bool p2 812 | ) internal view { 813 | _sendLogPayload( 814 | abi.encodeWithSignature("log(address,uint,bool)", p0, p1, p2) 815 | ); 816 | } 817 | 818 | function log( 819 | address p0, 820 | uint256 p1, 821 | address p2 822 | ) internal view { 823 | _sendLogPayload( 824 | abi.encodeWithSignature("log(address,uint,address)", p0, p1, p2) 825 | ); 826 | } 827 | 828 | function log( 829 | address p0, 830 | string memory p1, 831 | uint256 p2 832 | ) internal view { 833 | _sendLogPayload( 834 | abi.encodeWithSignature("log(address,string,uint)", p0, p1, p2) 835 | ); 836 | } 837 | 838 | function log( 839 | address p0, 840 | string memory p1, 841 | string memory p2 842 | ) internal view { 843 | _sendLogPayload( 844 | abi.encodeWithSignature("log(address,string,string)", p0, p1, p2) 845 | ); 846 | } 847 | 848 | function log( 849 | address p0, 850 | string memory p1, 851 | bool p2 852 | ) internal view { 853 | _sendLogPayload( 854 | abi.encodeWithSignature("log(address,string,bool)", p0, p1, p2) 855 | ); 856 | } 857 | 858 | function log( 859 | address p0, 860 | string memory p1, 861 | address p2 862 | ) internal view { 863 | _sendLogPayload( 864 | abi.encodeWithSignature("log(address,string,address)", p0, p1, p2) 865 | ); 866 | } 867 | 868 | function log( 869 | address p0, 870 | bool p1, 871 | uint256 p2 872 | ) internal view { 873 | _sendLogPayload( 874 | abi.encodeWithSignature("log(address,bool,uint)", p0, p1, p2) 875 | ); 876 | } 877 | 878 | function log( 879 | address p0, 880 | bool p1, 881 | string memory p2 882 | ) internal view { 883 | _sendLogPayload( 884 | abi.encodeWithSignature("log(address,bool,string)", p0, p1, p2) 885 | ); 886 | } 887 | 888 | function log( 889 | address p0, 890 | bool p1, 891 | bool p2 892 | ) internal view { 893 | _sendLogPayload( 894 | abi.encodeWithSignature("log(address,bool,bool)", p0, p1, p2) 895 | ); 896 | } 897 | 898 | function log( 899 | address p0, 900 | bool p1, 901 | address p2 902 | ) internal view { 903 | _sendLogPayload( 904 | abi.encodeWithSignature("log(address,bool,address)", p0, p1, p2) 905 | ); 906 | } 907 | 908 | function log( 909 | address p0, 910 | address p1, 911 | uint256 p2 912 | ) internal view { 913 | _sendLogPayload( 914 | abi.encodeWithSignature("log(address,address,uint)", p0, p1, p2) 915 | ); 916 | } 917 | 918 | function log( 919 | address p0, 920 | address p1, 921 | string memory p2 922 | ) internal view { 923 | _sendLogPayload( 924 | abi.encodeWithSignature("log(address,address,string)", p0, p1, p2) 925 | ); 926 | } 927 | 928 | function log( 929 | address p0, 930 | address p1, 931 | bool p2 932 | ) internal view { 933 | _sendLogPayload( 934 | abi.encodeWithSignature("log(address,address,bool)", p0, p1, p2) 935 | ); 936 | } 937 | 938 | function log( 939 | address p0, 940 | address p1, 941 | address p2 942 | ) internal view { 943 | _sendLogPayload( 944 | abi.encodeWithSignature("log(address,address,address)", p0, p1, p2) 945 | ); 946 | } 947 | 948 | function log( 949 | uint256 p0, 950 | uint256 p1, 951 | uint256 p2, 952 | uint256 p3 953 | ) internal view { 954 | _sendLogPayload( 955 | abi.encodeWithSignature("log(uint,uint,uint,uint)", p0, p1, p2, p3) 956 | ); 957 | } 958 | 959 | function log( 960 | uint256 p0, 961 | uint256 p1, 962 | uint256 p2, 963 | string memory p3 964 | ) internal view { 965 | _sendLogPayload( 966 | abi.encodeWithSignature( 967 | "log(uint,uint,uint,string)", 968 | p0, 969 | p1, 970 | p2, 971 | p3 972 | ) 973 | ); 974 | } 975 | 976 | function log( 977 | uint256 p0, 978 | uint256 p1, 979 | uint256 p2, 980 | bool p3 981 | ) internal view { 982 | _sendLogPayload( 983 | abi.encodeWithSignature("log(uint,uint,uint,bool)", p0, p1, p2, p3) 984 | ); 985 | } 986 | 987 | function log( 988 | uint256 p0, 989 | uint256 p1, 990 | uint256 p2, 991 | address p3 992 | ) internal view { 993 | _sendLogPayload( 994 | abi.encodeWithSignature( 995 | "log(uint,uint,uint,address)", 996 | p0, 997 | p1, 998 | p2, 999 | p3 1000 | ) 1001 | ); 1002 | } 1003 | 1004 | function log( 1005 | uint256 p0, 1006 | uint256 p1, 1007 | string memory p2, 1008 | uint256 p3 1009 | ) internal view { 1010 | _sendLogPayload( 1011 | abi.encodeWithSignature( 1012 | "log(uint,uint,string,uint)", 1013 | p0, 1014 | p1, 1015 | p2, 1016 | p3 1017 | ) 1018 | ); 1019 | } 1020 | 1021 | function log( 1022 | uint256 p0, 1023 | uint256 p1, 1024 | string memory p2, 1025 | string memory p3 1026 | ) internal view { 1027 | _sendLogPayload( 1028 | abi.encodeWithSignature( 1029 | "log(uint,uint,string,string)", 1030 | p0, 1031 | p1, 1032 | p2, 1033 | p3 1034 | ) 1035 | ); 1036 | } 1037 | 1038 | function log( 1039 | uint256 p0, 1040 | uint256 p1, 1041 | string memory p2, 1042 | bool p3 1043 | ) internal view { 1044 | _sendLogPayload( 1045 | abi.encodeWithSignature( 1046 | "log(uint,uint,string,bool)", 1047 | p0, 1048 | p1, 1049 | p2, 1050 | p3 1051 | ) 1052 | ); 1053 | } 1054 | 1055 | function log( 1056 | uint256 p0, 1057 | uint256 p1, 1058 | string memory p2, 1059 | address p3 1060 | ) internal view { 1061 | _sendLogPayload( 1062 | abi.encodeWithSignature( 1063 | "log(uint,uint,string,address)", 1064 | p0, 1065 | p1, 1066 | p2, 1067 | p3 1068 | ) 1069 | ); 1070 | } 1071 | 1072 | function log( 1073 | uint256 p0, 1074 | uint256 p1, 1075 | bool p2, 1076 | uint256 p3 1077 | ) internal view { 1078 | _sendLogPayload( 1079 | abi.encodeWithSignature("log(uint,uint,bool,uint)", p0, p1, p2, p3) 1080 | ); 1081 | } 1082 | 1083 | function log( 1084 | uint256 p0, 1085 | uint256 p1, 1086 | bool p2, 1087 | string memory p3 1088 | ) internal view { 1089 | _sendLogPayload( 1090 | abi.encodeWithSignature( 1091 | "log(uint,uint,bool,string)", 1092 | p0, 1093 | p1, 1094 | p2, 1095 | p3 1096 | ) 1097 | ); 1098 | } 1099 | 1100 | function log( 1101 | uint256 p0, 1102 | uint256 p1, 1103 | bool p2, 1104 | bool p3 1105 | ) internal view { 1106 | _sendLogPayload( 1107 | abi.encodeWithSignature("log(uint,uint,bool,bool)", p0, p1, p2, p3) 1108 | ); 1109 | } 1110 | 1111 | function log( 1112 | uint256 p0, 1113 | uint256 p1, 1114 | bool p2, 1115 | address p3 1116 | ) internal view { 1117 | _sendLogPayload( 1118 | abi.encodeWithSignature( 1119 | "log(uint,uint,bool,address)", 1120 | p0, 1121 | p1, 1122 | p2, 1123 | p3 1124 | ) 1125 | ); 1126 | } 1127 | 1128 | function log( 1129 | uint256 p0, 1130 | uint256 p1, 1131 | address p2, 1132 | uint256 p3 1133 | ) internal view { 1134 | _sendLogPayload( 1135 | abi.encodeWithSignature( 1136 | "log(uint,uint,address,uint)", 1137 | p0, 1138 | p1, 1139 | p2, 1140 | p3 1141 | ) 1142 | ); 1143 | } 1144 | 1145 | function log( 1146 | uint256 p0, 1147 | uint256 p1, 1148 | address p2, 1149 | string memory p3 1150 | ) internal view { 1151 | _sendLogPayload( 1152 | abi.encodeWithSignature( 1153 | "log(uint,uint,address,string)", 1154 | p0, 1155 | p1, 1156 | p2, 1157 | p3 1158 | ) 1159 | ); 1160 | } 1161 | 1162 | function log( 1163 | uint256 p0, 1164 | uint256 p1, 1165 | address p2, 1166 | bool p3 1167 | ) internal view { 1168 | _sendLogPayload( 1169 | abi.encodeWithSignature( 1170 | "log(uint,uint,address,bool)", 1171 | p0, 1172 | p1, 1173 | p2, 1174 | p3 1175 | ) 1176 | ); 1177 | } 1178 | 1179 | function log( 1180 | uint256 p0, 1181 | uint256 p1, 1182 | address p2, 1183 | address p3 1184 | ) internal view { 1185 | _sendLogPayload( 1186 | abi.encodeWithSignature( 1187 | "log(uint,uint,address,address)", 1188 | p0, 1189 | p1, 1190 | p2, 1191 | p3 1192 | ) 1193 | ); 1194 | } 1195 | 1196 | function log( 1197 | uint256 p0, 1198 | string memory p1, 1199 | uint256 p2, 1200 | uint256 p3 1201 | ) internal view { 1202 | _sendLogPayload( 1203 | abi.encodeWithSignature( 1204 | "log(uint,string,uint,uint)", 1205 | p0, 1206 | p1, 1207 | p2, 1208 | p3 1209 | ) 1210 | ); 1211 | } 1212 | 1213 | function log( 1214 | uint256 p0, 1215 | string memory p1, 1216 | uint256 p2, 1217 | string memory p3 1218 | ) internal view { 1219 | _sendLogPayload( 1220 | abi.encodeWithSignature( 1221 | "log(uint,string,uint,string)", 1222 | p0, 1223 | p1, 1224 | p2, 1225 | p3 1226 | ) 1227 | ); 1228 | } 1229 | 1230 | function log( 1231 | uint256 p0, 1232 | string memory p1, 1233 | uint256 p2, 1234 | bool p3 1235 | ) internal view { 1236 | _sendLogPayload( 1237 | abi.encodeWithSignature( 1238 | "log(uint,string,uint,bool)", 1239 | p0, 1240 | p1, 1241 | p2, 1242 | p3 1243 | ) 1244 | ); 1245 | } 1246 | 1247 | function log( 1248 | uint256 p0, 1249 | string memory p1, 1250 | uint256 p2, 1251 | address p3 1252 | ) internal view { 1253 | _sendLogPayload( 1254 | abi.encodeWithSignature( 1255 | "log(uint,string,uint,address)", 1256 | p0, 1257 | p1, 1258 | p2, 1259 | p3 1260 | ) 1261 | ); 1262 | } 1263 | 1264 | function log( 1265 | uint256 p0, 1266 | string memory p1, 1267 | string memory p2, 1268 | uint256 p3 1269 | ) internal view { 1270 | _sendLogPayload( 1271 | abi.encodeWithSignature( 1272 | "log(uint,string,string,uint)", 1273 | p0, 1274 | p1, 1275 | p2, 1276 | p3 1277 | ) 1278 | ); 1279 | } 1280 | 1281 | function log( 1282 | uint256 p0, 1283 | string memory p1, 1284 | string memory p2, 1285 | string memory p3 1286 | ) internal view { 1287 | _sendLogPayload( 1288 | abi.encodeWithSignature( 1289 | "log(uint,string,string,string)", 1290 | p0, 1291 | p1, 1292 | p2, 1293 | p3 1294 | ) 1295 | ); 1296 | } 1297 | 1298 | function log( 1299 | uint256 p0, 1300 | string memory p1, 1301 | string memory p2, 1302 | bool p3 1303 | ) internal view { 1304 | _sendLogPayload( 1305 | abi.encodeWithSignature( 1306 | "log(uint,string,string,bool)", 1307 | p0, 1308 | p1, 1309 | p2, 1310 | p3 1311 | ) 1312 | ); 1313 | } 1314 | 1315 | function log( 1316 | uint256 p0, 1317 | string memory p1, 1318 | string memory p2, 1319 | address p3 1320 | ) internal view { 1321 | _sendLogPayload( 1322 | abi.encodeWithSignature( 1323 | "log(uint,string,string,address)", 1324 | p0, 1325 | p1, 1326 | p2, 1327 | p3 1328 | ) 1329 | ); 1330 | } 1331 | 1332 | function log( 1333 | uint256 p0, 1334 | string memory p1, 1335 | bool p2, 1336 | uint256 p3 1337 | ) internal view { 1338 | _sendLogPayload( 1339 | abi.encodeWithSignature( 1340 | "log(uint,string,bool,uint)", 1341 | p0, 1342 | p1, 1343 | p2, 1344 | p3 1345 | ) 1346 | ); 1347 | } 1348 | 1349 | function log( 1350 | uint256 p0, 1351 | string memory p1, 1352 | bool p2, 1353 | string memory p3 1354 | ) internal view { 1355 | _sendLogPayload( 1356 | abi.encodeWithSignature( 1357 | "log(uint,string,bool,string)", 1358 | p0, 1359 | p1, 1360 | p2, 1361 | p3 1362 | ) 1363 | ); 1364 | } 1365 | 1366 | function log( 1367 | uint256 p0, 1368 | string memory p1, 1369 | bool p2, 1370 | bool p3 1371 | ) internal view { 1372 | _sendLogPayload( 1373 | abi.encodeWithSignature( 1374 | "log(uint,string,bool,bool)", 1375 | p0, 1376 | p1, 1377 | p2, 1378 | p3 1379 | ) 1380 | ); 1381 | } 1382 | 1383 | function log( 1384 | uint256 p0, 1385 | string memory p1, 1386 | bool p2, 1387 | address p3 1388 | ) internal view { 1389 | _sendLogPayload( 1390 | abi.encodeWithSignature( 1391 | "log(uint,string,bool,address)", 1392 | p0, 1393 | p1, 1394 | p2, 1395 | p3 1396 | ) 1397 | ); 1398 | } 1399 | 1400 | function log( 1401 | uint256 p0, 1402 | string memory p1, 1403 | address p2, 1404 | uint256 p3 1405 | ) internal view { 1406 | _sendLogPayload( 1407 | abi.encodeWithSignature( 1408 | "log(uint,string,address,uint)", 1409 | p0, 1410 | p1, 1411 | p2, 1412 | p3 1413 | ) 1414 | ); 1415 | } 1416 | 1417 | function log( 1418 | uint256 p0, 1419 | string memory p1, 1420 | address p2, 1421 | string memory p3 1422 | ) internal view { 1423 | _sendLogPayload( 1424 | abi.encodeWithSignature( 1425 | "log(uint,string,address,string)", 1426 | p0, 1427 | p1, 1428 | p2, 1429 | p3 1430 | ) 1431 | ); 1432 | } 1433 | 1434 | function log( 1435 | uint256 p0, 1436 | string memory p1, 1437 | address p2, 1438 | bool p3 1439 | ) internal view { 1440 | _sendLogPayload( 1441 | abi.encodeWithSignature( 1442 | "log(uint,string,address,bool)", 1443 | p0, 1444 | p1, 1445 | p2, 1446 | p3 1447 | ) 1448 | ); 1449 | } 1450 | 1451 | function log( 1452 | uint256 p0, 1453 | string memory p1, 1454 | address p2, 1455 | address p3 1456 | ) internal view { 1457 | _sendLogPayload( 1458 | abi.encodeWithSignature( 1459 | "log(uint,string,address,address)", 1460 | p0, 1461 | p1, 1462 | p2, 1463 | p3 1464 | ) 1465 | ); 1466 | } 1467 | 1468 | function log( 1469 | uint256 p0, 1470 | bool p1, 1471 | uint256 p2, 1472 | uint256 p3 1473 | ) internal view { 1474 | _sendLogPayload( 1475 | abi.encodeWithSignature("log(uint,bool,uint,uint)", p0, p1, p2, p3) 1476 | ); 1477 | } 1478 | 1479 | function log( 1480 | uint256 p0, 1481 | bool p1, 1482 | uint256 p2, 1483 | string memory p3 1484 | ) internal view { 1485 | _sendLogPayload( 1486 | abi.encodeWithSignature( 1487 | "log(uint,bool,uint,string)", 1488 | p0, 1489 | p1, 1490 | p2, 1491 | p3 1492 | ) 1493 | ); 1494 | } 1495 | 1496 | function log( 1497 | uint256 p0, 1498 | bool p1, 1499 | uint256 p2, 1500 | bool p3 1501 | ) internal view { 1502 | _sendLogPayload( 1503 | abi.encodeWithSignature("log(uint,bool,uint,bool)", p0, p1, p2, p3) 1504 | ); 1505 | } 1506 | 1507 | function log( 1508 | uint256 p0, 1509 | bool p1, 1510 | uint256 p2, 1511 | address p3 1512 | ) internal view { 1513 | _sendLogPayload( 1514 | abi.encodeWithSignature( 1515 | "log(uint,bool,uint,address)", 1516 | p0, 1517 | p1, 1518 | p2, 1519 | p3 1520 | ) 1521 | ); 1522 | } 1523 | 1524 | function log( 1525 | uint256 p0, 1526 | bool p1, 1527 | string memory p2, 1528 | uint256 p3 1529 | ) internal view { 1530 | _sendLogPayload( 1531 | abi.encodeWithSignature( 1532 | "log(uint,bool,string,uint)", 1533 | p0, 1534 | p1, 1535 | p2, 1536 | p3 1537 | ) 1538 | ); 1539 | } 1540 | 1541 | function log( 1542 | uint256 p0, 1543 | bool p1, 1544 | string memory p2, 1545 | string memory p3 1546 | ) internal view { 1547 | _sendLogPayload( 1548 | abi.encodeWithSignature( 1549 | "log(uint,bool,string,string)", 1550 | p0, 1551 | p1, 1552 | p2, 1553 | p3 1554 | ) 1555 | ); 1556 | } 1557 | 1558 | function log( 1559 | uint256 p0, 1560 | bool p1, 1561 | string memory p2, 1562 | bool p3 1563 | ) internal view { 1564 | _sendLogPayload( 1565 | abi.encodeWithSignature( 1566 | "log(uint,bool,string,bool)", 1567 | p0, 1568 | p1, 1569 | p2, 1570 | p3 1571 | ) 1572 | ); 1573 | } 1574 | 1575 | function log( 1576 | uint256 p0, 1577 | bool p1, 1578 | string memory p2, 1579 | address p3 1580 | ) internal view { 1581 | _sendLogPayload( 1582 | abi.encodeWithSignature( 1583 | "log(uint,bool,string,address)", 1584 | p0, 1585 | p1, 1586 | p2, 1587 | p3 1588 | ) 1589 | ); 1590 | } 1591 | 1592 | function log( 1593 | uint256 p0, 1594 | bool p1, 1595 | bool p2, 1596 | uint256 p3 1597 | ) internal view { 1598 | _sendLogPayload( 1599 | abi.encodeWithSignature("log(uint,bool,bool,uint)", p0, p1, p2, p3) 1600 | ); 1601 | } 1602 | 1603 | function log( 1604 | uint256 p0, 1605 | bool p1, 1606 | bool p2, 1607 | string memory p3 1608 | ) internal view { 1609 | _sendLogPayload( 1610 | abi.encodeWithSignature( 1611 | "log(uint,bool,bool,string)", 1612 | p0, 1613 | p1, 1614 | p2, 1615 | p3 1616 | ) 1617 | ); 1618 | } 1619 | 1620 | function log( 1621 | uint256 p0, 1622 | bool p1, 1623 | bool p2, 1624 | bool p3 1625 | ) internal view { 1626 | _sendLogPayload( 1627 | abi.encodeWithSignature("log(uint,bool,bool,bool)", p0, p1, p2, p3) 1628 | ); 1629 | } 1630 | 1631 | function log( 1632 | uint256 p0, 1633 | bool p1, 1634 | bool p2, 1635 | address p3 1636 | ) internal view { 1637 | _sendLogPayload( 1638 | abi.encodeWithSignature( 1639 | "log(uint,bool,bool,address)", 1640 | p0, 1641 | p1, 1642 | p2, 1643 | p3 1644 | ) 1645 | ); 1646 | } 1647 | 1648 | function log( 1649 | uint256 p0, 1650 | bool p1, 1651 | address p2, 1652 | uint256 p3 1653 | ) internal view { 1654 | _sendLogPayload( 1655 | abi.encodeWithSignature( 1656 | "log(uint,bool,address,uint)", 1657 | p0, 1658 | p1, 1659 | p2, 1660 | p3 1661 | ) 1662 | ); 1663 | } 1664 | 1665 | function log( 1666 | uint256 p0, 1667 | bool p1, 1668 | address p2, 1669 | string memory p3 1670 | ) internal view { 1671 | _sendLogPayload( 1672 | abi.encodeWithSignature( 1673 | "log(uint,bool,address,string)", 1674 | p0, 1675 | p1, 1676 | p2, 1677 | p3 1678 | ) 1679 | ); 1680 | } 1681 | 1682 | function log( 1683 | uint256 p0, 1684 | bool p1, 1685 | address p2, 1686 | bool p3 1687 | ) internal view { 1688 | _sendLogPayload( 1689 | abi.encodeWithSignature( 1690 | "log(uint,bool,address,bool)", 1691 | p0, 1692 | p1, 1693 | p2, 1694 | p3 1695 | ) 1696 | ); 1697 | } 1698 | 1699 | function log( 1700 | uint256 p0, 1701 | bool p1, 1702 | address p2, 1703 | address p3 1704 | ) internal view { 1705 | _sendLogPayload( 1706 | abi.encodeWithSignature( 1707 | "log(uint,bool,address,address)", 1708 | p0, 1709 | p1, 1710 | p2, 1711 | p3 1712 | ) 1713 | ); 1714 | } 1715 | 1716 | function log( 1717 | uint256 p0, 1718 | address p1, 1719 | uint256 p2, 1720 | uint256 p3 1721 | ) internal view { 1722 | _sendLogPayload( 1723 | abi.encodeWithSignature( 1724 | "log(uint,address,uint,uint)", 1725 | p0, 1726 | p1, 1727 | p2, 1728 | p3 1729 | ) 1730 | ); 1731 | } 1732 | 1733 | function log( 1734 | uint256 p0, 1735 | address p1, 1736 | uint256 p2, 1737 | string memory p3 1738 | ) internal view { 1739 | _sendLogPayload( 1740 | abi.encodeWithSignature( 1741 | "log(uint,address,uint,string)", 1742 | p0, 1743 | p1, 1744 | p2, 1745 | p3 1746 | ) 1747 | ); 1748 | } 1749 | 1750 | function log( 1751 | uint256 p0, 1752 | address p1, 1753 | uint256 p2, 1754 | bool p3 1755 | ) internal view { 1756 | _sendLogPayload( 1757 | abi.encodeWithSignature( 1758 | "log(uint,address,uint,bool)", 1759 | p0, 1760 | p1, 1761 | p2, 1762 | p3 1763 | ) 1764 | ); 1765 | } 1766 | 1767 | function log( 1768 | uint256 p0, 1769 | address p1, 1770 | uint256 p2, 1771 | address p3 1772 | ) internal view { 1773 | _sendLogPayload( 1774 | abi.encodeWithSignature( 1775 | "log(uint,address,uint,address)", 1776 | p0, 1777 | p1, 1778 | p2, 1779 | p3 1780 | ) 1781 | ); 1782 | } 1783 | 1784 | function log( 1785 | uint256 p0, 1786 | address p1, 1787 | string memory p2, 1788 | uint256 p3 1789 | ) internal view { 1790 | _sendLogPayload( 1791 | abi.encodeWithSignature( 1792 | "log(uint,address,string,uint)", 1793 | p0, 1794 | p1, 1795 | p2, 1796 | p3 1797 | ) 1798 | ); 1799 | } 1800 | 1801 | function log( 1802 | uint256 p0, 1803 | address p1, 1804 | string memory p2, 1805 | string memory p3 1806 | ) internal view { 1807 | _sendLogPayload( 1808 | abi.encodeWithSignature( 1809 | "log(uint,address,string,string)", 1810 | p0, 1811 | p1, 1812 | p2, 1813 | p3 1814 | ) 1815 | ); 1816 | } 1817 | 1818 | function log( 1819 | uint256 p0, 1820 | address p1, 1821 | string memory p2, 1822 | bool p3 1823 | ) internal view { 1824 | _sendLogPayload( 1825 | abi.encodeWithSignature( 1826 | "log(uint,address,string,bool)", 1827 | p0, 1828 | p1, 1829 | p2, 1830 | p3 1831 | ) 1832 | ); 1833 | } 1834 | 1835 | function log( 1836 | uint256 p0, 1837 | address p1, 1838 | string memory p2, 1839 | address p3 1840 | ) internal view { 1841 | _sendLogPayload( 1842 | abi.encodeWithSignature( 1843 | "log(uint,address,string,address)", 1844 | p0, 1845 | p1, 1846 | p2, 1847 | p3 1848 | ) 1849 | ); 1850 | } 1851 | 1852 | function log( 1853 | uint256 p0, 1854 | address p1, 1855 | bool p2, 1856 | uint256 p3 1857 | ) internal view { 1858 | _sendLogPayload( 1859 | abi.encodeWithSignature( 1860 | "log(uint,address,bool,uint)", 1861 | p0, 1862 | p1, 1863 | p2, 1864 | p3 1865 | ) 1866 | ); 1867 | } 1868 | 1869 | function log( 1870 | uint256 p0, 1871 | address p1, 1872 | bool p2, 1873 | string memory p3 1874 | ) internal view { 1875 | _sendLogPayload( 1876 | abi.encodeWithSignature( 1877 | "log(uint,address,bool,string)", 1878 | p0, 1879 | p1, 1880 | p2, 1881 | p3 1882 | ) 1883 | ); 1884 | } 1885 | 1886 | function log( 1887 | uint256 p0, 1888 | address p1, 1889 | bool p2, 1890 | bool p3 1891 | ) internal view { 1892 | _sendLogPayload( 1893 | abi.encodeWithSignature( 1894 | "log(uint,address,bool,bool)", 1895 | p0, 1896 | p1, 1897 | p2, 1898 | p3 1899 | ) 1900 | ); 1901 | } 1902 | 1903 | function log( 1904 | uint256 p0, 1905 | address p1, 1906 | bool p2, 1907 | address p3 1908 | ) internal view { 1909 | _sendLogPayload( 1910 | abi.encodeWithSignature( 1911 | "log(uint,address,bool,address)", 1912 | p0, 1913 | p1, 1914 | p2, 1915 | p3 1916 | ) 1917 | ); 1918 | } 1919 | 1920 | function log( 1921 | uint256 p0, 1922 | address p1, 1923 | address p2, 1924 | uint256 p3 1925 | ) internal view { 1926 | _sendLogPayload( 1927 | abi.encodeWithSignature( 1928 | "log(uint,address,address,uint)", 1929 | p0, 1930 | p1, 1931 | p2, 1932 | p3 1933 | ) 1934 | ); 1935 | } 1936 | 1937 | function log( 1938 | uint256 p0, 1939 | address p1, 1940 | address p2, 1941 | string memory p3 1942 | ) internal view { 1943 | _sendLogPayload( 1944 | abi.encodeWithSignature( 1945 | "log(uint,address,address,string)", 1946 | p0, 1947 | p1, 1948 | p2, 1949 | p3 1950 | ) 1951 | ); 1952 | } 1953 | 1954 | function log( 1955 | uint256 p0, 1956 | address p1, 1957 | address p2, 1958 | bool p3 1959 | ) internal view { 1960 | _sendLogPayload( 1961 | abi.encodeWithSignature( 1962 | "log(uint,address,address,bool)", 1963 | p0, 1964 | p1, 1965 | p2, 1966 | p3 1967 | ) 1968 | ); 1969 | } 1970 | 1971 | function log( 1972 | uint256 p0, 1973 | address p1, 1974 | address p2, 1975 | address p3 1976 | ) internal view { 1977 | _sendLogPayload( 1978 | abi.encodeWithSignature( 1979 | "log(uint,address,address,address)", 1980 | p0, 1981 | p1, 1982 | p2, 1983 | p3 1984 | ) 1985 | ); 1986 | } 1987 | 1988 | function log( 1989 | string memory p0, 1990 | uint256 p1, 1991 | uint256 p2, 1992 | uint256 p3 1993 | ) internal view { 1994 | _sendLogPayload( 1995 | abi.encodeWithSignature( 1996 | "log(string,uint,uint,uint)", 1997 | p0, 1998 | p1, 1999 | p2, 2000 | p3 2001 | ) 2002 | ); 2003 | } 2004 | 2005 | function log( 2006 | string memory p0, 2007 | uint256 p1, 2008 | uint256 p2, 2009 | string memory p3 2010 | ) internal view { 2011 | _sendLogPayload( 2012 | abi.encodeWithSignature( 2013 | "log(string,uint,uint,string)", 2014 | p0, 2015 | p1, 2016 | p2, 2017 | p3 2018 | ) 2019 | ); 2020 | } 2021 | 2022 | function log( 2023 | string memory p0, 2024 | uint256 p1, 2025 | uint256 p2, 2026 | bool p3 2027 | ) internal view { 2028 | _sendLogPayload( 2029 | abi.encodeWithSignature( 2030 | "log(string,uint,uint,bool)", 2031 | p0, 2032 | p1, 2033 | p2, 2034 | p3 2035 | ) 2036 | ); 2037 | } 2038 | 2039 | function log( 2040 | string memory p0, 2041 | uint256 p1, 2042 | uint256 p2, 2043 | address p3 2044 | ) internal view { 2045 | _sendLogPayload( 2046 | abi.encodeWithSignature( 2047 | "log(string,uint,uint,address)", 2048 | p0, 2049 | p1, 2050 | p2, 2051 | p3 2052 | ) 2053 | ); 2054 | } 2055 | 2056 | function log( 2057 | string memory p0, 2058 | uint256 p1, 2059 | string memory p2, 2060 | uint256 p3 2061 | ) internal view { 2062 | _sendLogPayload( 2063 | abi.encodeWithSignature( 2064 | "log(string,uint,string,uint)", 2065 | p0, 2066 | p1, 2067 | p2, 2068 | p3 2069 | ) 2070 | ); 2071 | } 2072 | 2073 | function log( 2074 | string memory p0, 2075 | uint256 p1, 2076 | string memory p2, 2077 | string memory p3 2078 | ) internal view { 2079 | _sendLogPayload( 2080 | abi.encodeWithSignature( 2081 | "log(string,uint,string,string)", 2082 | p0, 2083 | p1, 2084 | p2, 2085 | p3 2086 | ) 2087 | ); 2088 | } 2089 | 2090 | function log( 2091 | string memory p0, 2092 | uint256 p1, 2093 | string memory p2, 2094 | bool p3 2095 | ) internal view { 2096 | _sendLogPayload( 2097 | abi.encodeWithSignature( 2098 | "log(string,uint,string,bool)", 2099 | p0, 2100 | p1, 2101 | p2, 2102 | p3 2103 | ) 2104 | ); 2105 | } 2106 | 2107 | function log( 2108 | string memory p0, 2109 | uint256 p1, 2110 | string memory p2, 2111 | address p3 2112 | ) internal view { 2113 | _sendLogPayload( 2114 | abi.encodeWithSignature( 2115 | "log(string,uint,string,address)", 2116 | p0, 2117 | p1, 2118 | p2, 2119 | p3 2120 | ) 2121 | ); 2122 | } 2123 | 2124 | function log( 2125 | string memory p0, 2126 | uint256 p1, 2127 | bool p2, 2128 | uint256 p3 2129 | ) internal view { 2130 | _sendLogPayload( 2131 | abi.encodeWithSignature( 2132 | "log(string,uint,bool,uint)", 2133 | p0, 2134 | p1, 2135 | p2, 2136 | p3 2137 | ) 2138 | ); 2139 | } 2140 | 2141 | function log( 2142 | string memory p0, 2143 | uint256 p1, 2144 | bool p2, 2145 | string memory p3 2146 | ) internal view { 2147 | _sendLogPayload( 2148 | abi.encodeWithSignature( 2149 | "log(string,uint,bool,string)", 2150 | p0, 2151 | p1, 2152 | p2, 2153 | p3 2154 | ) 2155 | ); 2156 | } 2157 | 2158 | function log( 2159 | string memory p0, 2160 | uint256 p1, 2161 | bool p2, 2162 | bool p3 2163 | ) internal view { 2164 | _sendLogPayload( 2165 | abi.encodeWithSignature( 2166 | "log(string,uint,bool,bool)", 2167 | p0, 2168 | p1, 2169 | p2, 2170 | p3 2171 | ) 2172 | ); 2173 | } 2174 | 2175 | function log( 2176 | string memory p0, 2177 | uint256 p1, 2178 | bool p2, 2179 | address p3 2180 | ) internal view { 2181 | _sendLogPayload( 2182 | abi.encodeWithSignature( 2183 | "log(string,uint,bool,address)", 2184 | p0, 2185 | p1, 2186 | p2, 2187 | p3 2188 | ) 2189 | ); 2190 | } 2191 | 2192 | function log( 2193 | string memory p0, 2194 | uint256 p1, 2195 | address p2, 2196 | uint256 p3 2197 | ) internal view { 2198 | _sendLogPayload( 2199 | abi.encodeWithSignature( 2200 | "log(string,uint,address,uint)", 2201 | p0, 2202 | p1, 2203 | p2, 2204 | p3 2205 | ) 2206 | ); 2207 | } 2208 | 2209 | function log( 2210 | string memory p0, 2211 | uint256 p1, 2212 | address p2, 2213 | string memory p3 2214 | ) internal view { 2215 | _sendLogPayload( 2216 | abi.encodeWithSignature( 2217 | "log(string,uint,address,string)", 2218 | p0, 2219 | p1, 2220 | p2, 2221 | p3 2222 | ) 2223 | ); 2224 | } 2225 | 2226 | function log( 2227 | string memory p0, 2228 | uint256 p1, 2229 | address p2, 2230 | bool p3 2231 | ) internal view { 2232 | _sendLogPayload( 2233 | abi.encodeWithSignature( 2234 | "log(string,uint,address,bool)", 2235 | p0, 2236 | p1, 2237 | p2, 2238 | p3 2239 | ) 2240 | ); 2241 | } 2242 | 2243 | function log( 2244 | string memory p0, 2245 | uint256 p1, 2246 | address p2, 2247 | address p3 2248 | ) internal view { 2249 | _sendLogPayload( 2250 | abi.encodeWithSignature( 2251 | "log(string,uint,address,address)", 2252 | p0, 2253 | p1, 2254 | p2, 2255 | p3 2256 | ) 2257 | ); 2258 | } 2259 | 2260 | function log( 2261 | string memory p0, 2262 | string memory p1, 2263 | uint256 p2, 2264 | uint256 p3 2265 | ) internal view { 2266 | _sendLogPayload( 2267 | abi.encodeWithSignature( 2268 | "log(string,string,uint,uint)", 2269 | p0, 2270 | p1, 2271 | p2, 2272 | p3 2273 | ) 2274 | ); 2275 | } 2276 | 2277 | function log( 2278 | string memory p0, 2279 | string memory p1, 2280 | uint256 p2, 2281 | string memory p3 2282 | ) internal view { 2283 | _sendLogPayload( 2284 | abi.encodeWithSignature( 2285 | "log(string,string,uint,string)", 2286 | p0, 2287 | p1, 2288 | p2, 2289 | p3 2290 | ) 2291 | ); 2292 | } 2293 | 2294 | function log( 2295 | string memory p0, 2296 | string memory p1, 2297 | uint256 p2, 2298 | bool p3 2299 | ) internal view { 2300 | _sendLogPayload( 2301 | abi.encodeWithSignature( 2302 | "log(string,string,uint,bool)", 2303 | p0, 2304 | p1, 2305 | p2, 2306 | p3 2307 | ) 2308 | ); 2309 | } 2310 | 2311 | function log( 2312 | string memory p0, 2313 | string memory p1, 2314 | uint256 p2, 2315 | address p3 2316 | ) internal view { 2317 | _sendLogPayload( 2318 | abi.encodeWithSignature( 2319 | "log(string,string,uint,address)", 2320 | p0, 2321 | p1, 2322 | p2, 2323 | p3 2324 | ) 2325 | ); 2326 | } 2327 | 2328 | function log( 2329 | string memory p0, 2330 | string memory p1, 2331 | string memory p2, 2332 | uint256 p3 2333 | ) internal view { 2334 | _sendLogPayload( 2335 | abi.encodeWithSignature( 2336 | "log(string,string,string,uint)", 2337 | p0, 2338 | p1, 2339 | p2, 2340 | p3 2341 | ) 2342 | ); 2343 | } 2344 | 2345 | function log( 2346 | string memory p0, 2347 | string memory p1, 2348 | string memory p2, 2349 | string memory p3 2350 | ) internal view { 2351 | _sendLogPayload( 2352 | abi.encodeWithSignature( 2353 | "log(string,string,string,string)", 2354 | p0, 2355 | p1, 2356 | p2, 2357 | p3 2358 | ) 2359 | ); 2360 | } 2361 | 2362 | function log( 2363 | string memory p0, 2364 | string memory p1, 2365 | string memory p2, 2366 | bool p3 2367 | ) internal view { 2368 | _sendLogPayload( 2369 | abi.encodeWithSignature( 2370 | "log(string,string,string,bool)", 2371 | p0, 2372 | p1, 2373 | p2, 2374 | p3 2375 | ) 2376 | ); 2377 | } 2378 | 2379 | function log( 2380 | string memory p0, 2381 | string memory p1, 2382 | string memory p2, 2383 | address p3 2384 | ) internal view { 2385 | _sendLogPayload( 2386 | abi.encodeWithSignature( 2387 | "log(string,string,string,address)", 2388 | p0, 2389 | p1, 2390 | p2, 2391 | p3 2392 | ) 2393 | ); 2394 | } 2395 | 2396 | function log( 2397 | string memory p0, 2398 | string memory p1, 2399 | bool p2, 2400 | uint256 p3 2401 | ) internal view { 2402 | _sendLogPayload( 2403 | abi.encodeWithSignature( 2404 | "log(string,string,bool,uint)", 2405 | p0, 2406 | p1, 2407 | p2, 2408 | p3 2409 | ) 2410 | ); 2411 | } 2412 | 2413 | function log( 2414 | string memory p0, 2415 | string memory p1, 2416 | bool p2, 2417 | string memory p3 2418 | ) internal view { 2419 | _sendLogPayload( 2420 | abi.encodeWithSignature( 2421 | "log(string,string,bool,string)", 2422 | p0, 2423 | p1, 2424 | p2, 2425 | p3 2426 | ) 2427 | ); 2428 | } 2429 | 2430 | function log( 2431 | string memory p0, 2432 | string memory p1, 2433 | bool p2, 2434 | bool p3 2435 | ) internal view { 2436 | _sendLogPayload( 2437 | abi.encodeWithSignature( 2438 | "log(string,string,bool,bool)", 2439 | p0, 2440 | p1, 2441 | p2, 2442 | p3 2443 | ) 2444 | ); 2445 | } 2446 | 2447 | function log( 2448 | string memory p0, 2449 | string memory p1, 2450 | bool p2, 2451 | address p3 2452 | ) internal view { 2453 | _sendLogPayload( 2454 | abi.encodeWithSignature( 2455 | "log(string,string,bool,address)", 2456 | p0, 2457 | p1, 2458 | p2, 2459 | p3 2460 | ) 2461 | ); 2462 | } 2463 | 2464 | function log( 2465 | string memory p0, 2466 | string memory p1, 2467 | address p2, 2468 | uint256 p3 2469 | ) internal view { 2470 | _sendLogPayload( 2471 | abi.encodeWithSignature( 2472 | "log(string,string,address,uint)", 2473 | p0, 2474 | p1, 2475 | p2, 2476 | p3 2477 | ) 2478 | ); 2479 | } 2480 | 2481 | function log( 2482 | string memory p0, 2483 | string memory p1, 2484 | address p2, 2485 | string memory p3 2486 | ) internal view { 2487 | _sendLogPayload( 2488 | abi.encodeWithSignature( 2489 | "log(string,string,address,string)", 2490 | p0, 2491 | p1, 2492 | p2, 2493 | p3 2494 | ) 2495 | ); 2496 | } 2497 | 2498 | function log( 2499 | string memory p0, 2500 | string memory p1, 2501 | address p2, 2502 | bool p3 2503 | ) internal view { 2504 | _sendLogPayload( 2505 | abi.encodeWithSignature( 2506 | "log(string,string,address,bool)", 2507 | p0, 2508 | p1, 2509 | p2, 2510 | p3 2511 | ) 2512 | ); 2513 | } 2514 | 2515 | function log( 2516 | string memory p0, 2517 | string memory p1, 2518 | address p2, 2519 | address p3 2520 | ) internal view { 2521 | _sendLogPayload( 2522 | abi.encodeWithSignature( 2523 | "log(string,string,address,address)", 2524 | p0, 2525 | p1, 2526 | p2, 2527 | p3 2528 | ) 2529 | ); 2530 | } 2531 | 2532 | function log( 2533 | string memory p0, 2534 | bool p1, 2535 | uint256 p2, 2536 | uint256 p3 2537 | ) internal view { 2538 | _sendLogPayload( 2539 | abi.encodeWithSignature( 2540 | "log(string,bool,uint,uint)", 2541 | p0, 2542 | p1, 2543 | p2, 2544 | p3 2545 | ) 2546 | ); 2547 | } 2548 | 2549 | function log( 2550 | string memory p0, 2551 | bool p1, 2552 | uint256 p2, 2553 | string memory p3 2554 | ) internal view { 2555 | _sendLogPayload( 2556 | abi.encodeWithSignature( 2557 | "log(string,bool,uint,string)", 2558 | p0, 2559 | p1, 2560 | p2, 2561 | p3 2562 | ) 2563 | ); 2564 | } 2565 | 2566 | function log( 2567 | string memory p0, 2568 | bool p1, 2569 | uint256 p2, 2570 | bool p3 2571 | ) internal view { 2572 | _sendLogPayload( 2573 | abi.encodeWithSignature( 2574 | "log(string,bool,uint,bool)", 2575 | p0, 2576 | p1, 2577 | p2, 2578 | p3 2579 | ) 2580 | ); 2581 | } 2582 | 2583 | function log( 2584 | string memory p0, 2585 | bool p1, 2586 | uint256 p2, 2587 | address p3 2588 | ) internal view { 2589 | _sendLogPayload( 2590 | abi.encodeWithSignature( 2591 | "log(string,bool,uint,address)", 2592 | p0, 2593 | p1, 2594 | p2, 2595 | p3 2596 | ) 2597 | ); 2598 | } 2599 | 2600 | function log( 2601 | string memory p0, 2602 | bool p1, 2603 | string memory p2, 2604 | uint256 p3 2605 | ) internal view { 2606 | _sendLogPayload( 2607 | abi.encodeWithSignature( 2608 | "log(string,bool,string,uint)", 2609 | p0, 2610 | p1, 2611 | p2, 2612 | p3 2613 | ) 2614 | ); 2615 | } 2616 | 2617 | function log( 2618 | string memory p0, 2619 | bool p1, 2620 | string memory p2, 2621 | string memory p3 2622 | ) internal view { 2623 | _sendLogPayload( 2624 | abi.encodeWithSignature( 2625 | "log(string,bool,string,string)", 2626 | p0, 2627 | p1, 2628 | p2, 2629 | p3 2630 | ) 2631 | ); 2632 | } 2633 | 2634 | function log( 2635 | string memory p0, 2636 | bool p1, 2637 | string memory p2, 2638 | bool p3 2639 | ) internal view { 2640 | _sendLogPayload( 2641 | abi.encodeWithSignature( 2642 | "log(string,bool,string,bool)", 2643 | p0, 2644 | p1, 2645 | p2, 2646 | p3 2647 | ) 2648 | ); 2649 | } 2650 | 2651 | function log( 2652 | string memory p0, 2653 | bool p1, 2654 | string memory p2, 2655 | address p3 2656 | ) internal view { 2657 | _sendLogPayload( 2658 | abi.encodeWithSignature( 2659 | "log(string,bool,string,address)", 2660 | p0, 2661 | p1, 2662 | p2, 2663 | p3 2664 | ) 2665 | ); 2666 | } 2667 | 2668 | function log( 2669 | string memory p0, 2670 | bool p1, 2671 | bool p2, 2672 | uint256 p3 2673 | ) internal view { 2674 | _sendLogPayload( 2675 | abi.encodeWithSignature( 2676 | "log(string,bool,bool,uint)", 2677 | p0, 2678 | p1, 2679 | p2, 2680 | p3 2681 | ) 2682 | ); 2683 | } 2684 | 2685 | function log( 2686 | string memory p0, 2687 | bool p1, 2688 | bool p2, 2689 | string memory p3 2690 | ) internal view { 2691 | _sendLogPayload( 2692 | abi.encodeWithSignature( 2693 | "log(string,bool,bool,string)", 2694 | p0, 2695 | p1, 2696 | p2, 2697 | p3 2698 | ) 2699 | ); 2700 | } 2701 | 2702 | function log( 2703 | string memory p0, 2704 | bool p1, 2705 | bool p2, 2706 | bool p3 2707 | ) internal view { 2708 | _sendLogPayload( 2709 | abi.encodeWithSignature( 2710 | "log(string,bool,bool,bool)", 2711 | p0, 2712 | p1, 2713 | p2, 2714 | p3 2715 | ) 2716 | ); 2717 | } 2718 | 2719 | function log( 2720 | string memory p0, 2721 | bool p1, 2722 | bool p2, 2723 | address p3 2724 | ) internal view { 2725 | _sendLogPayload( 2726 | abi.encodeWithSignature( 2727 | "log(string,bool,bool,address)", 2728 | p0, 2729 | p1, 2730 | p2, 2731 | p3 2732 | ) 2733 | ); 2734 | } 2735 | 2736 | function log( 2737 | string memory p0, 2738 | bool p1, 2739 | address p2, 2740 | uint256 p3 2741 | ) internal view { 2742 | _sendLogPayload( 2743 | abi.encodeWithSignature( 2744 | "log(string,bool,address,uint)", 2745 | p0, 2746 | p1, 2747 | p2, 2748 | p3 2749 | ) 2750 | ); 2751 | } 2752 | 2753 | function log( 2754 | string memory p0, 2755 | bool p1, 2756 | address p2, 2757 | string memory p3 2758 | ) internal view { 2759 | _sendLogPayload( 2760 | abi.encodeWithSignature( 2761 | "log(string,bool,address,string)", 2762 | p0, 2763 | p1, 2764 | p2, 2765 | p3 2766 | ) 2767 | ); 2768 | } 2769 | 2770 | function log( 2771 | string memory p0, 2772 | bool p1, 2773 | address p2, 2774 | bool p3 2775 | ) internal view { 2776 | _sendLogPayload( 2777 | abi.encodeWithSignature( 2778 | "log(string,bool,address,bool)", 2779 | p0, 2780 | p1, 2781 | p2, 2782 | p3 2783 | ) 2784 | ); 2785 | } 2786 | 2787 | function log( 2788 | string memory p0, 2789 | bool p1, 2790 | address p2, 2791 | address p3 2792 | ) internal view { 2793 | _sendLogPayload( 2794 | abi.encodeWithSignature( 2795 | "log(string,bool,address,address)", 2796 | p0, 2797 | p1, 2798 | p2, 2799 | p3 2800 | ) 2801 | ); 2802 | } 2803 | 2804 | function log( 2805 | string memory p0, 2806 | address p1, 2807 | uint256 p2, 2808 | uint256 p3 2809 | ) internal view { 2810 | _sendLogPayload( 2811 | abi.encodeWithSignature( 2812 | "log(string,address,uint,uint)", 2813 | p0, 2814 | p1, 2815 | p2, 2816 | p3 2817 | ) 2818 | ); 2819 | } 2820 | 2821 | function log( 2822 | string memory p0, 2823 | address p1, 2824 | uint256 p2, 2825 | string memory p3 2826 | ) internal view { 2827 | _sendLogPayload( 2828 | abi.encodeWithSignature( 2829 | "log(string,address,uint,string)", 2830 | p0, 2831 | p1, 2832 | p2, 2833 | p3 2834 | ) 2835 | ); 2836 | } 2837 | 2838 | function log( 2839 | string memory p0, 2840 | address p1, 2841 | uint256 p2, 2842 | bool p3 2843 | ) internal view { 2844 | _sendLogPayload( 2845 | abi.encodeWithSignature( 2846 | "log(string,address,uint,bool)", 2847 | p0, 2848 | p1, 2849 | p2, 2850 | p3 2851 | ) 2852 | ); 2853 | } 2854 | 2855 | function log( 2856 | string memory p0, 2857 | address p1, 2858 | uint256 p2, 2859 | address p3 2860 | ) internal view { 2861 | _sendLogPayload( 2862 | abi.encodeWithSignature( 2863 | "log(string,address,uint,address)", 2864 | p0, 2865 | p1, 2866 | p2, 2867 | p3 2868 | ) 2869 | ); 2870 | } 2871 | 2872 | function log( 2873 | string memory p0, 2874 | address p1, 2875 | string memory p2, 2876 | uint256 p3 2877 | ) internal view { 2878 | _sendLogPayload( 2879 | abi.encodeWithSignature( 2880 | "log(string,address,string,uint)", 2881 | p0, 2882 | p1, 2883 | p2, 2884 | p3 2885 | ) 2886 | ); 2887 | } 2888 | 2889 | function log( 2890 | string memory p0, 2891 | address p1, 2892 | string memory p2, 2893 | string memory p3 2894 | ) internal view { 2895 | _sendLogPayload( 2896 | abi.encodeWithSignature( 2897 | "log(string,address,string,string)", 2898 | p0, 2899 | p1, 2900 | p2, 2901 | p3 2902 | ) 2903 | ); 2904 | } 2905 | 2906 | function log( 2907 | string memory p0, 2908 | address p1, 2909 | string memory p2, 2910 | bool p3 2911 | ) internal view { 2912 | _sendLogPayload( 2913 | abi.encodeWithSignature( 2914 | "log(string,address,string,bool)", 2915 | p0, 2916 | p1, 2917 | p2, 2918 | p3 2919 | ) 2920 | ); 2921 | } 2922 | 2923 | function log( 2924 | string memory p0, 2925 | address p1, 2926 | string memory p2, 2927 | address p3 2928 | ) internal view { 2929 | _sendLogPayload( 2930 | abi.encodeWithSignature( 2931 | "log(string,address,string,address)", 2932 | p0, 2933 | p1, 2934 | p2, 2935 | p3 2936 | ) 2937 | ); 2938 | } 2939 | 2940 | function log( 2941 | string memory p0, 2942 | address p1, 2943 | bool p2, 2944 | uint256 p3 2945 | ) internal view { 2946 | _sendLogPayload( 2947 | abi.encodeWithSignature( 2948 | "log(string,address,bool,uint)", 2949 | p0, 2950 | p1, 2951 | p2, 2952 | p3 2953 | ) 2954 | ); 2955 | } 2956 | 2957 | function log( 2958 | string memory p0, 2959 | address p1, 2960 | bool p2, 2961 | string memory p3 2962 | ) internal view { 2963 | _sendLogPayload( 2964 | abi.encodeWithSignature( 2965 | "log(string,address,bool,string)", 2966 | p0, 2967 | p1, 2968 | p2, 2969 | p3 2970 | ) 2971 | ); 2972 | } 2973 | 2974 | function log( 2975 | string memory p0, 2976 | address p1, 2977 | bool p2, 2978 | bool p3 2979 | ) internal view { 2980 | _sendLogPayload( 2981 | abi.encodeWithSignature( 2982 | "log(string,address,bool,bool)", 2983 | p0, 2984 | p1, 2985 | p2, 2986 | p3 2987 | ) 2988 | ); 2989 | } 2990 | 2991 | function log( 2992 | string memory p0, 2993 | address p1, 2994 | bool p2, 2995 | address p3 2996 | ) internal view { 2997 | _sendLogPayload( 2998 | abi.encodeWithSignature( 2999 | "log(string,address,bool,address)", 3000 | p0, 3001 | p1, 3002 | p2, 3003 | p3 3004 | ) 3005 | ); 3006 | } 3007 | 3008 | function log( 3009 | string memory p0, 3010 | address p1, 3011 | address p2, 3012 | uint256 p3 3013 | ) internal view { 3014 | _sendLogPayload( 3015 | abi.encodeWithSignature( 3016 | "log(string,address,address,uint)", 3017 | p0, 3018 | p1, 3019 | p2, 3020 | p3 3021 | ) 3022 | ); 3023 | } 3024 | 3025 | function log( 3026 | string memory p0, 3027 | address p1, 3028 | address p2, 3029 | string memory p3 3030 | ) internal view { 3031 | _sendLogPayload( 3032 | abi.encodeWithSignature( 3033 | "log(string,address,address,string)", 3034 | p0, 3035 | p1, 3036 | p2, 3037 | p3 3038 | ) 3039 | ); 3040 | } 3041 | 3042 | function log( 3043 | string memory p0, 3044 | address p1, 3045 | address p2, 3046 | bool p3 3047 | ) internal view { 3048 | _sendLogPayload( 3049 | abi.encodeWithSignature( 3050 | "log(string,address,address,bool)", 3051 | p0, 3052 | p1, 3053 | p2, 3054 | p3 3055 | ) 3056 | ); 3057 | } 3058 | 3059 | function log( 3060 | string memory p0, 3061 | address p1, 3062 | address p2, 3063 | address p3 3064 | ) internal view { 3065 | _sendLogPayload( 3066 | abi.encodeWithSignature( 3067 | "log(string,address,address,address)", 3068 | p0, 3069 | p1, 3070 | p2, 3071 | p3 3072 | ) 3073 | ); 3074 | } 3075 | 3076 | function log( 3077 | bool p0, 3078 | uint256 p1, 3079 | uint256 p2, 3080 | uint256 p3 3081 | ) internal view { 3082 | _sendLogPayload( 3083 | abi.encodeWithSignature("log(bool,uint,uint,uint)", p0, p1, p2, p3) 3084 | ); 3085 | } 3086 | 3087 | function log( 3088 | bool p0, 3089 | uint256 p1, 3090 | uint256 p2, 3091 | string memory p3 3092 | ) internal view { 3093 | _sendLogPayload( 3094 | abi.encodeWithSignature( 3095 | "log(bool,uint,uint,string)", 3096 | p0, 3097 | p1, 3098 | p2, 3099 | p3 3100 | ) 3101 | ); 3102 | } 3103 | 3104 | function log( 3105 | bool p0, 3106 | uint256 p1, 3107 | uint256 p2, 3108 | bool p3 3109 | ) internal view { 3110 | _sendLogPayload( 3111 | abi.encodeWithSignature("log(bool,uint,uint,bool)", p0, p1, p2, p3) 3112 | ); 3113 | } 3114 | 3115 | function log( 3116 | bool p0, 3117 | uint256 p1, 3118 | uint256 p2, 3119 | address p3 3120 | ) internal view { 3121 | _sendLogPayload( 3122 | abi.encodeWithSignature( 3123 | "log(bool,uint,uint,address)", 3124 | p0, 3125 | p1, 3126 | p2, 3127 | p3 3128 | ) 3129 | ); 3130 | } 3131 | 3132 | function log( 3133 | bool p0, 3134 | uint256 p1, 3135 | string memory p2, 3136 | uint256 p3 3137 | ) internal view { 3138 | _sendLogPayload( 3139 | abi.encodeWithSignature( 3140 | "log(bool,uint,string,uint)", 3141 | p0, 3142 | p1, 3143 | p2, 3144 | p3 3145 | ) 3146 | ); 3147 | } 3148 | 3149 | function log( 3150 | bool p0, 3151 | uint256 p1, 3152 | string memory p2, 3153 | string memory p3 3154 | ) internal view { 3155 | _sendLogPayload( 3156 | abi.encodeWithSignature( 3157 | "log(bool,uint,string,string)", 3158 | p0, 3159 | p1, 3160 | p2, 3161 | p3 3162 | ) 3163 | ); 3164 | } 3165 | 3166 | function log( 3167 | bool p0, 3168 | uint256 p1, 3169 | string memory p2, 3170 | bool p3 3171 | ) internal view { 3172 | _sendLogPayload( 3173 | abi.encodeWithSignature( 3174 | "log(bool,uint,string,bool)", 3175 | p0, 3176 | p1, 3177 | p2, 3178 | p3 3179 | ) 3180 | ); 3181 | } 3182 | 3183 | function log( 3184 | bool p0, 3185 | uint256 p1, 3186 | string memory p2, 3187 | address p3 3188 | ) internal view { 3189 | _sendLogPayload( 3190 | abi.encodeWithSignature( 3191 | "log(bool,uint,string,address)", 3192 | p0, 3193 | p1, 3194 | p2, 3195 | p3 3196 | ) 3197 | ); 3198 | } 3199 | 3200 | function log( 3201 | bool p0, 3202 | uint256 p1, 3203 | bool p2, 3204 | uint256 p3 3205 | ) internal view { 3206 | _sendLogPayload( 3207 | abi.encodeWithSignature("log(bool,uint,bool,uint)", p0, p1, p2, p3) 3208 | ); 3209 | } 3210 | 3211 | function log( 3212 | bool p0, 3213 | uint256 p1, 3214 | bool p2, 3215 | string memory p3 3216 | ) internal view { 3217 | _sendLogPayload( 3218 | abi.encodeWithSignature( 3219 | "log(bool,uint,bool,string)", 3220 | p0, 3221 | p1, 3222 | p2, 3223 | p3 3224 | ) 3225 | ); 3226 | } 3227 | 3228 | function log( 3229 | bool p0, 3230 | uint256 p1, 3231 | bool p2, 3232 | bool p3 3233 | ) internal view { 3234 | _sendLogPayload( 3235 | abi.encodeWithSignature("log(bool,uint,bool,bool)", p0, p1, p2, p3) 3236 | ); 3237 | } 3238 | 3239 | function log( 3240 | bool p0, 3241 | uint256 p1, 3242 | bool p2, 3243 | address p3 3244 | ) internal view { 3245 | _sendLogPayload( 3246 | abi.encodeWithSignature( 3247 | "log(bool,uint,bool,address)", 3248 | p0, 3249 | p1, 3250 | p2, 3251 | p3 3252 | ) 3253 | ); 3254 | } 3255 | 3256 | function log( 3257 | bool p0, 3258 | uint256 p1, 3259 | address p2, 3260 | uint256 p3 3261 | ) internal view { 3262 | _sendLogPayload( 3263 | abi.encodeWithSignature( 3264 | "log(bool,uint,address,uint)", 3265 | p0, 3266 | p1, 3267 | p2, 3268 | p3 3269 | ) 3270 | ); 3271 | } 3272 | 3273 | function log( 3274 | bool p0, 3275 | uint256 p1, 3276 | address p2, 3277 | string memory p3 3278 | ) internal view { 3279 | _sendLogPayload( 3280 | abi.encodeWithSignature( 3281 | "log(bool,uint,address,string)", 3282 | p0, 3283 | p1, 3284 | p2, 3285 | p3 3286 | ) 3287 | ); 3288 | } 3289 | 3290 | function log( 3291 | bool p0, 3292 | uint256 p1, 3293 | address p2, 3294 | bool p3 3295 | ) internal view { 3296 | _sendLogPayload( 3297 | abi.encodeWithSignature( 3298 | "log(bool,uint,address,bool)", 3299 | p0, 3300 | p1, 3301 | p2, 3302 | p3 3303 | ) 3304 | ); 3305 | } 3306 | 3307 | function log( 3308 | bool p0, 3309 | uint256 p1, 3310 | address p2, 3311 | address p3 3312 | ) internal view { 3313 | _sendLogPayload( 3314 | abi.encodeWithSignature( 3315 | "log(bool,uint,address,address)", 3316 | p0, 3317 | p1, 3318 | p2, 3319 | p3 3320 | ) 3321 | ); 3322 | } 3323 | 3324 | function log( 3325 | bool p0, 3326 | string memory p1, 3327 | uint256 p2, 3328 | uint256 p3 3329 | ) internal view { 3330 | _sendLogPayload( 3331 | abi.encodeWithSignature( 3332 | "log(bool,string,uint,uint)", 3333 | p0, 3334 | p1, 3335 | p2, 3336 | p3 3337 | ) 3338 | ); 3339 | } 3340 | 3341 | function log( 3342 | bool p0, 3343 | string memory p1, 3344 | uint256 p2, 3345 | string memory p3 3346 | ) internal view { 3347 | _sendLogPayload( 3348 | abi.encodeWithSignature( 3349 | "log(bool,string,uint,string)", 3350 | p0, 3351 | p1, 3352 | p2, 3353 | p3 3354 | ) 3355 | ); 3356 | } 3357 | 3358 | function log( 3359 | bool p0, 3360 | string memory p1, 3361 | uint256 p2, 3362 | bool p3 3363 | ) internal view { 3364 | _sendLogPayload( 3365 | abi.encodeWithSignature( 3366 | "log(bool,string,uint,bool)", 3367 | p0, 3368 | p1, 3369 | p2, 3370 | p3 3371 | ) 3372 | ); 3373 | } 3374 | 3375 | function log( 3376 | bool p0, 3377 | string memory p1, 3378 | uint256 p2, 3379 | address p3 3380 | ) internal view { 3381 | _sendLogPayload( 3382 | abi.encodeWithSignature( 3383 | "log(bool,string,uint,address)", 3384 | p0, 3385 | p1, 3386 | p2, 3387 | p3 3388 | ) 3389 | ); 3390 | } 3391 | 3392 | function log( 3393 | bool p0, 3394 | string memory p1, 3395 | string memory p2, 3396 | uint256 p3 3397 | ) internal view { 3398 | _sendLogPayload( 3399 | abi.encodeWithSignature( 3400 | "log(bool,string,string,uint)", 3401 | p0, 3402 | p1, 3403 | p2, 3404 | p3 3405 | ) 3406 | ); 3407 | } 3408 | 3409 | function log( 3410 | bool p0, 3411 | string memory p1, 3412 | string memory p2, 3413 | string memory p3 3414 | ) internal view { 3415 | _sendLogPayload( 3416 | abi.encodeWithSignature( 3417 | "log(bool,string,string,string)", 3418 | p0, 3419 | p1, 3420 | p2, 3421 | p3 3422 | ) 3423 | ); 3424 | } 3425 | 3426 | function log( 3427 | bool p0, 3428 | string memory p1, 3429 | string memory p2, 3430 | bool p3 3431 | ) internal view { 3432 | _sendLogPayload( 3433 | abi.encodeWithSignature( 3434 | "log(bool,string,string,bool)", 3435 | p0, 3436 | p1, 3437 | p2, 3438 | p3 3439 | ) 3440 | ); 3441 | } 3442 | 3443 | function log( 3444 | bool p0, 3445 | string memory p1, 3446 | string memory p2, 3447 | address p3 3448 | ) internal view { 3449 | _sendLogPayload( 3450 | abi.encodeWithSignature( 3451 | "log(bool,string,string,address)", 3452 | p0, 3453 | p1, 3454 | p2, 3455 | p3 3456 | ) 3457 | ); 3458 | } 3459 | 3460 | function log( 3461 | bool p0, 3462 | string memory p1, 3463 | bool p2, 3464 | uint256 p3 3465 | ) internal view { 3466 | _sendLogPayload( 3467 | abi.encodeWithSignature( 3468 | "log(bool,string,bool,uint)", 3469 | p0, 3470 | p1, 3471 | p2, 3472 | p3 3473 | ) 3474 | ); 3475 | } 3476 | 3477 | function log( 3478 | bool p0, 3479 | string memory p1, 3480 | bool p2, 3481 | string memory p3 3482 | ) internal view { 3483 | _sendLogPayload( 3484 | abi.encodeWithSignature( 3485 | "log(bool,string,bool,string)", 3486 | p0, 3487 | p1, 3488 | p2, 3489 | p3 3490 | ) 3491 | ); 3492 | } 3493 | 3494 | function log( 3495 | bool p0, 3496 | string memory p1, 3497 | bool p2, 3498 | bool p3 3499 | ) internal view { 3500 | _sendLogPayload( 3501 | abi.encodeWithSignature( 3502 | "log(bool,string,bool,bool)", 3503 | p0, 3504 | p1, 3505 | p2, 3506 | p3 3507 | ) 3508 | ); 3509 | } 3510 | 3511 | function log( 3512 | bool p0, 3513 | string memory p1, 3514 | bool p2, 3515 | address p3 3516 | ) internal view { 3517 | _sendLogPayload( 3518 | abi.encodeWithSignature( 3519 | "log(bool,string,bool,address)", 3520 | p0, 3521 | p1, 3522 | p2, 3523 | p3 3524 | ) 3525 | ); 3526 | } 3527 | 3528 | function log( 3529 | bool p0, 3530 | string memory p1, 3531 | address p2, 3532 | uint256 p3 3533 | ) internal view { 3534 | _sendLogPayload( 3535 | abi.encodeWithSignature( 3536 | "log(bool,string,address,uint)", 3537 | p0, 3538 | p1, 3539 | p2, 3540 | p3 3541 | ) 3542 | ); 3543 | } 3544 | 3545 | function log( 3546 | bool p0, 3547 | string memory p1, 3548 | address p2, 3549 | string memory p3 3550 | ) internal view { 3551 | _sendLogPayload( 3552 | abi.encodeWithSignature( 3553 | "log(bool,string,address,string)", 3554 | p0, 3555 | p1, 3556 | p2, 3557 | p3 3558 | ) 3559 | ); 3560 | } 3561 | 3562 | function log( 3563 | bool p0, 3564 | string memory p1, 3565 | address p2, 3566 | bool p3 3567 | ) internal view { 3568 | _sendLogPayload( 3569 | abi.encodeWithSignature( 3570 | "log(bool,string,address,bool)", 3571 | p0, 3572 | p1, 3573 | p2, 3574 | p3 3575 | ) 3576 | ); 3577 | } 3578 | 3579 | function log( 3580 | bool p0, 3581 | string memory p1, 3582 | address p2, 3583 | address p3 3584 | ) internal view { 3585 | _sendLogPayload( 3586 | abi.encodeWithSignature( 3587 | "log(bool,string,address,address)", 3588 | p0, 3589 | p1, 3590 | p2, 3591 | p3 3592 | ) 3593 | ); 3594 | } 3595 | 3596 | function log( 3597 | bool p0, 3598 | bool p1, 3599 | uint256 p2, 3600 | uint256 p3 3601 | ) internal view { 3602 | _sendLogPayload( 3603 | abi.encodeWithSignature("log(bool,bool,uint,uint)", p0, p1, p2, p3) 3604 | ); 3605 | } 3606 | 3607 | function log( 3608 | bool p0, 3609 | bool p1, 3610 | uint256 p2, 3611 | string memory p3 3612 | ) internal view { 3613 | _sendLogPayload( 3614 | abi.encodeWithSignature( 3615 | "log(bool,bool,uint,string)", 3616 | p0, 3617 | p1, 3618 | p2, 3619 | p3 3620 | ) 3621 | ); 3622 | } 3623 | 3624 | function log( 3625 | bool p0, 3626 | bool p1, 3627 | uint256 p2, 3628 | bool p3 3629 | ) internal view { 3630 | _sendLogPayload( 3631 | abi.encodeWithSignature("log(bool,bool,uint,bool)", p0, p1, p2, p3) 3632 | ); 3633 | } 3634 | 3635 | function log( 3636 | bool p0, 3637 | bool p1, 3638 | uint256 p2, 3639 | address p3 3640 | ) internal view { 3641 | _sendLogPayload( 3642 | abi.encodeWithSignature( 3643 | "log(bool,bool,uint,address)", 3644 | p0, 3645 | p1, 3646 | p2, 3647 | p3 3648 | ) 3649 | ); 3650 | } 3651 | 3652 | function log( 3653 | bool p0, 3654 | bool p1, 3655 | string memory p2, 3656 | uint256 p3 3657 | ) internal view { 3658 | _sendLogPayload( 3659 | abi.encodeWithSignature( 3660 | "log(bool,bool,string,uint)", 3661 | p0, 3662 | p1, 3663 | p2, 3664 | p3 3665 | ) 3666 | ); 3667 | } 3668 | 3669 | function log( 3670 | bool p0, 3671 | bool p1, 3672 | string memory p2, 3673 | string memory p3 3674 | ) internal view { 3675 | _sendLogPayload( 3676 | abi.encodeWithSignature( 3677 | "log(bool,bool,string,string)", 3678 | p0, 3679 | p1, 3680 | p2, 3681 | p3 3682 | ) 3683 | ); 3684 | } 3685 | 3686 | function log( 3687 | bool p0, 3688 | bool p1, 3689 | string memory p2, 3690 | bool p3 3691 | ) internal view { 3692 | _sendLogPayload( 3693 | abi.encodeWithSignature( 3694 | "log(bool,bool,string,bool)", 3695 | p0, 3696 | p1, 3697 | p2, 3698 | p3 3699 | ) 3700 | ); 3701 | } 3702 | 3703 | function log( 3704 | bool p0, 3705 | bool p1, 3706 | string memory p2, 3707 | address p3 3708 | ) internal view { 3709 | _sendLogPayload( 3710 | abi.encodeWithSignature( 3711 | "log(bool,bool,string,address)", 3712 | p0, 3713 | p1, 3714 | p2, 3715 | p3 3716 | ) 3717 | ); 3718 | } 3719 | 3720 | function log( 3721 | bool p0, 3722 | bool p1, 3723 | bool p2, 3724 | uint256 p3 3725 | ) internal view { 3726 | _sendLogPayload( 3727 | abi.encodeWithSignature("log(bool,bool,bool,uint)", p0, p1, p2, p3) 3728 | ); 3729 | } 3730 | 3731 | function log( 3732 | bool p0, 3733 | bool p1, 3734 | bool p2, 3735 | string memory p3 3736 | ) internal view { 3737 | _sendLogPayload( 3738 | abi.encodeWithSignature( 3739 | "log(bool,bool,bool,string)", 3740 | p0, 3741 | p1, 3742 | p2, 3743 | p3 3744 | ) 3745 | ); 3746 | } 3747 | 3748 | function log( 3749 | bool p0, 3750 | bool p1, 3751 | bool p2, 3752 | bool p3 3753 | ) internal view { 3754 | _sendLogPayload( 3755 | abi.encodeWithSignature("log(bool,bool,bool,bool)", p0, p1, p2, p3) 3756 | ); 3757 | } 3758 | 3759 | function log( 3760 | bool p0, 3761 | bool p1, 3762 | bool p2, 3763 | address p3 3764 | ) internal view { 3765 | _sendLogPayload( 3766 | abi.encodeWithSignature( 3767 | "log(bool,bool,bool,address)", 3768 | p0, 3769 | p1, 3770 | p2, 3771 | p3 3772 | ) 3773 | ); 3774 | } 3775 | 3776 | function log( 3777 | bool p0, 3778 | bool p1, 3779 | address p2, 3780 | uint256 p3 3781 | ) internal view { 3782 | _sendLogPayload( 3783 | abi.encodeWithSignature( 3784 | "log(bool,bool,address,uint)", 3785 | p0, 3786 | p1, 3787 | p2, 3788 | p3 3789 | ) 3790 | ); 3791 | } 3792 | 3793 | function log( 3794 | bool p0, 3795 | bool p1, 3796 | address p2, 3797 | string memory p3 3798 | ) internal view { 3799 | _sendLogPayload( 3800 | abi.encodeWithSignature( 3801 | "log(bool,bool,address,string)", 3802 | p0, 3803 | p1, 3804 | p2, 3805 | p3 3806 | ) 3807 | ); 3808 | } 3809 | 3810 | function log( 3811 | bool p0, 3812 | bool p1, 3813 | address p2, 3814 | bool p3 3815 | ) internal view { 3816 | _sendLogPayload( 3817 | abi.encodeWithSignature( 3818 | "log(bool,bool,address,bool)", 3819 | p0, 3820 | p1, 3821 | p2, 3822 | p3 3823 | ) 3824 | ); 3825 | } 3826 | 3827 | function log( 3828 | bool p0, 3829 | bool p1, 3830 | address p2, 3831 | address p3 3832 | ) internal view { 3833 | _sendLogPayload( 3834 | abi.encodeWithSignature( 3835 | "log(bool,bool,address,address)", 3836 | p0, 3837 | p1, 3838 | p2, 3839 | p3 3840 | ) 3841 | ); 3842 | } 3843 | 3844 | function log( 3845 | bool p0, 3846 | address p1, 3847 | uint256 p2, 3848 | uint256 p3 3849 | ) internal view { 3850 | _sendLogPayload( 3851 | abi.encodeWithSignature( 3852 | "log(bool,address,uint,uint)", 3853 | p0, 3854 | p1, 3855 | p2, 3856 | p3 3857 | ) 3858 | ); 3859 | } 3860 | 3861 | function log( 3862 | bool p0, 3863 | address p1, 3864 | uint256 p2, 3865 | string memory p3 3866 | ) internal view { 3867 | _sendLogPayload( 3868 | abi.encodeWithSignature( 3869 | "log(bool,address,uint,string)", 3870 | p0, 3871 | p1, 3872 | p2, 3873 | p3 3874 | ) 3875 | ); 3876 | } 3877 | 3878 | function log( 3879 | bool p0, 3880 | address p1, 3881 | uint256 p2, 3882 | bool p3 3883 | ) internal view { 3884 | _sendLogPayload( 3885 | abi.encodeWithSignature( 3886 | "log(bool,address,uint,bool)", 3887 | p0, 3888 | p1, 3889 | p2, 3890 | p3 3891 | ) 3892 | ); 3893 | } 3894 | 3895 | function log( 3896 | bool p0, 3897 | address p1, 3898 | uint256 p2, 3899 | address p3 3900 | ) internal view { 3901 | _sendLogPayload( 3902 | abi.encodeWithSignature( 3903 | "log(bool,address,uint,address)", 3904 | p0, 3905 | p1, 3906 | p2, 3907 | p3 3908 | ) 3909 | ); 3910 | } 3911 | 3912 | function log( 3913 | bool p0, 3914 | address p1, 3915 | string memory p2, 3916 | uint256 p3 3917 | ) internal view { 3918 | _sendLogPayload( 3919 | abi.encodeWithSignature( 3920 | "log(bool,address,string,uint)", 3921 | p0, 3922 | p1, 3923 | p2, 3924 | p3 3925 | ) 3926 | ); 3927 | } 3928 | 3929 | function log( 3930 | bool p0, 3931 | address p1, 3932 | string memory p2, 3933 | string memory p3 3934 | ) internal view { 3935 | _sendLogPayload( 3936 | abi.encodeWithSignature( 3937 | "log(bool,address,string,string)", 3938 | p0, 3939 | p1, 3940 | p2, 3941 | p3 3942 | ) 3943 | ); 3944 | } 3945 | 3946 | function log( 3947 | bool p0, 3948 | address p1, 3949 | string memory p2, 3950 | bool p3 3951 | ) internal view { 3952 | _sendLogPayload( 3953 | abi.encodeWithSignature( 3954 | "log(bool,address,string,bool)", 3955 | p0, 3956 | p1, 3957 | p2, 3958 | p3 3959 | ) 3960 | ); 3961 | } 3962 | 3963 | function log( 3964 | bool p0, 3965 | address p1, 3966 | string memory p2, 3967 | address p3 3968 | ) internal view { 3969 | _sendLogPayload( 3970 | abi.encodeWithSignature( 3971 | "log(bool,address,string,address)", 3972 | p0, 3973 | p1, 3974 | p2, 3975 | p3 3976 | ) 3977 | ); 3978 | } 3979 | 3980 | function log( 3981 | bool p0, 3982 | address p1, 3983 | bool p2, 3984 | uint256 p3 3985 | ) internal view { 3986 | _sendLogPayload( 3987 | abi.encodeWithSignature( 3988 | "log(bool,address,bool,uint)", 3989 | p0, 3990 | p1, 3991 | p2, 3992 | p3 3993 | ) 3994 | ); 3995 | } 3996 | 3997 | function log( 3998 | bool p0, 3999 | address p1, 4000 | bool p2, 4001 | string memory p3 4002 | ) internal view { 4003 | _sendLogPayload( 4004 | abi.encodeWithSignature( 4005 | "log(bool,address,bool,string)", 4006 | p0, 4007 | p1, 4008 | p2, 4009 | p3 4010 | ) 4011 | ); 4012 | } 4013 | 4014 | function log( 4015 | bool p0, 4016 | address p1, 4017 | bool p2, 4018 | bool p3 4019 | ) internal view { 4020 | _sendLogPayload( 4021 | abi.encodeWithSignature( 4022 | "log(bool,address,bool,bool)", 4023 | p0, 4024 | p1, 4025 | p2, 4026 | p3 4027 | ) 4028 | ); 4029 | } 4030 | 4031 | function log( 4032 | bool p0, 4033 | address p1, 4034 | bool p2, 4035 | address p3 4036 | ) internal view { 4037 | _sendLogPayload( 4038 | abi.encodeWithSignature( 4039 | "log(bool,address,bool,address)", 4040 | p0, 4041 | p1, 4042 | p2, 4043 | p3 4044 | ) 4045 | ); 4046 | } 4047 | 4048 | function log( 4049 | bool p0, 4050 | address p1, 4051 | address p2, 4052 | uint256 p3 4053 | ) internal view { 4054 | _sendLogPayload( 4055 | abi.encodeWithSignature( 4056 | "log(bool,address,address,uint)", 4057 | p0, 4058 | p1, 4059 | p2, 4060 | p3 4061 | ) 4062 | ); 4063 | } 4064 | 4065 | function log( 4066 | bool p0, 4067 | address p1, 4068 | address p2, 4069 | string memory p3 4070 | ) internal view { 4071 | _sendLogPayload( 4072 | abi.encodeWithSignature( 4073 | "log(bool,address,address,string)", 4074 | p0, 4075 | p1, 4076 | p2, 4077 | p3 4078 | ) 4079 | ); 4080 | } 4081 | 4082 | function log( 4083 | bool p0, 4084 | address p1, 4085 | address p2, 4086 | bool p3 4087 | ) internal view { 4088 | _sendLogPayload( 4089 | abi.encodeWithSignature( 4090 | "log(bool,address,address,bool)", 4091 | p0, 4092 | p1, 4093 | p2, 4094 | p3 4095 | ) 4096 | ); 4097 | } 4098 | 4099 | function log( 4100 | bool p0, 4101 | address p1, 4102 | address p2, 4103 | address p3 4104 | ) internal view { 4105 | _sendLogPayload( 4106 | abi.encodeWithSignature( 4107 | "log(bool,address,address,address)", 4108 | p0, 4109 | p1, 4110 | p2, 4111 | p3 4112 | ) 4113 | ); 4114 | } 4115 | 4116 | function log( 4117 | address p0, 4118 | uint256 p1, 4119 | uint256 p2, 4120 | uint256 p3 4121 | ) internal view { 4122 | _sendLogPayload( 4123 | abi.encodeWithSignature( 4124 | "log(address,uint,uint,uint)", 4125 | p0, 4126 | p1, 4127 | p2, 4128 | p3 4129 | ) 4130 | ); 4131 | } 4132 | 4133 | function log( 4134 | address p0, 4135 | uint256 p1, 4136 | uint256 p2, 4137 | string memory p3 4138 | ) internal view { 4139 | _sendLogPayload( 4140 | abi.encodeWithSignature( 4141 | "log(address,uint,uint,string)", 4142 | p0, 4143 | p1, 4144 | p2, 4145 | p3 4146 | ) 4147 | ); 4148 | } 4149 | 4150 | function log( 4151 | address p0, 4152 | uint256 p1, 4153 | uint256 p2, 4154 | bool p3 4155 | ) internal view { 4156 | _sendLogPayload( 4157 | abi.encodeWithSignature( 4158 | "log(address,uint,uint,bool)", 4159 | p0, 4160 | p1, 4161 | p2, 4162 | p3 4163 | ) 4164 | ); 4165 | } 4166 | 4167 | function log( 4168 | address p0, 4169 | uint256 p1, 4170 | uint256 p2, 4171 | address p3 4172 | ) internal view { 4173 | _sendLogPayload( 4174 | abi.encodeWithSignature( 4175 | "log(address,uint,uint,address)", 4176 | p0, 4177 | p1, 4178 | p2, 4179 | p3 4180 | ) 4181 | ); 4182 | } 4183 | 4184 | function log( 4185 | address p0, 4186 | uint256 p1, 4187 | string memory p2, 4188 | uint256 p3 4189 | ) internal view { 4190 | _sendLogPayload( 4191 | abi.encodeWithSignature( 4192 | "log(address,uint,string,uint)", 4193 | p0, 4194 | p1, 4195 | p2, 4196 | p3 4197 | ) 4198 | ); 4199 | } 4200 | 4201 | function log( 4202 | address p0, 4203 | uint256 p1, 4204 | string memory p2, 4205 | string memory p3 4206 | ) internal view { 4207 | _sendLogPayload( 4208 | abi.encodeWithSignature( 4209 | "log(address,uint,string,string)", 4210 | p0, 4211 | p1, 4212 | p2, 4213 | p3 4214 | ) 4215 | ); 4216 | } 4217 | 4218 | function log( 4219 | address p0, 4220 | uint256 p1, 4221 | string memory p2, 4222 | bool p3 4223 | ) internal view { 4224 | _sendLogPayload( 4225 | abi.encodeWithSignature( 4226 | "log(address,uint,string,bool)", 4227 | p0, 4228 | p1, 4229 | p2, 4230 | p3 4231 | ) 4232 | ); 4233 | } 4234 | 4235 | function log( 4236 | address p0, 4237 | uint256 p1, 4238 | string memory p2, 4239 | address p3 4240 | ) internal view { 4241 | _sendLogPayload( 4242 | abi.encodeWithSignature( 4243 | "log(address,uint,string,address)", 4244 | p0, 4245 | p1, 4246 | p2, 4247 | p3 4248 | ) 4249 | ); 4250 | } 4251 | 4252 | function log( 4253 | address p0, 4254 | uint256 p1, 4255 | bool p2, 4256 | uint256 p3 4257 | ) internal view { 4258 | _sendLogPayload( 4259 | abi.encodeWithSignature( 4260 | "log(address,uint,bool,uint)", 4261 | p0, 4262 | p1, 4263 | p2, 4264 | p3 4265 | ) 4266 | ); 4267 | } 4268 | 4269 | function log( 4270 | address p0, 4271 | uint256 p1, 4272 | bool p2, 4273 | string memory p3 4274 | ) internal view { 4275 | _sendLogPayload( 4276 | abi.encodeWithSignature( 4277 | "log(address,uint,bool,string)", 4278 | p0, 4279 | p1, 4280 | p2, 4281 | p3 4282 | ) 4283 | ); 4284 | } 4285 | 4286 | function log( 4287 | address p0, 4288 | uint256 p1, 4289 | bool p2, 4290 | bool p3 4291 | ) internal view { 4292 | _sendLogPayload( 4293 | abi.encodeWithSignature( 4294 | "log(address,uint,bool,bool)", 4295 | p0, 4296 | p1, 4297 | p2, 4298 | p3 4299 | ) 4300 | ); 4301 | } 4302 | 4303 | function log( 4304 | address p0, 4305 | uint256 p1, 4306 | bool p2, 4307 | address p3 4308 | ) internal view { 4309 | _sendLogPayload( 4310 | abi.encodeWithSignature( 4311 | "log(address,uint,bool,address)", 4312 | p0, 4313 | p1, 4314 | p2, 4315 | p3 4316 | ) 4317 | ); 4318 | } 4319 | 4320 | function log( 4321 | address p0, 4322 | uint256 p1, 4323 | address p2, 4324 | uint256 p3 4325 | ) internal view { 4326 | _sendLogPayload( 4327 | abi.encodeWithSignature( 4328 | "log(address,uint,address,uint)", 4329 | p0, 4330 | p1, 4331 | p2, 4332 | p3 4333 | ) 4334 | ); 4335 | } 4336 | 4337 | function log( 4338 | address p0, 4339 | uint256 p1, 4340 | address p2, 4341 | string memory p3 4342 | ) internal view { 4343 | _sendLogPayload( 4344 | abi.encodeWithSignature( 4345 | "log(address,uint,address,string)", 4346 | p0, 4347 | p1, 4348 | p2, 4349 | p3 4350 | ) 4351 | ); 4352 | } 4353 | 4354 | function log( 4355 | address p0, 4356 | uint256 p1, 4357 | address p2, 4358 | bool p3 4359 | ) internal view { 4360 | _sendLogPayload( 4361 | abi.encodeWithSignature( 4362 | "log(address,uint,address,bool)", 4363 | p0, 4364 | p1, 4365 | p2, 4366 | p3 4367 | ) 4368 | ); 4369 | } 4370 | 4371 | function log( 4372 | address p0, 4373 | uint256 p1, 4374 | address p2, 4375 | address p3 4376 | ) internal view { 4377 | _sendLogPayload( 4378 | abi.encodeWithSignature( 4379 | "log(address,uint,address,address)", 4380 | p0, 4381 | p1, 4382 | p2, 4383 | p3 4384 | ) 4385 | ); 4386 | } 4387 | 4388 | function log( 4389 | address p0, 4390 | string memory p1, 4391 | uint256 p2, 4392 | uint256 p3 4393 | ) internal view { 4394 | _sendLogPayload( 4395 | abi.encodeWithSignature( 4396 | "log(address,string,uint,uint)", 4397 | p0, 4398 | p1, 4399 | p2, 4400 | p3 4401 | ) 4402 | ); 4403 | } 4404 | 4405 | function log( 4406 | address p0, 4407 | string memory p1, 4408 | uint256 p2, 4409 | string memory p3 4410 | ) internal view { 4411 | _sendLogPayload( 4412 | abi.encodeWithSignature( 4413 | "log(address,string,uint,string)", 4414 | p0, 4415 | p1, 4416 | p2, 4417 | p3 4418 | ) 4419 | ); 4420 | } 4421 | 4422 | function log( 4423 | address p0, 4424 | string memory p1, 4425 | uint256 p2, 4426 | bool p3 4427 | ) internal view { 4428 | _sendLogPayload( 4429 | abi.encodeWithSignature( 4430 | "log(address,string,uint,bool)", 4431 | p0, 4432 | p1, 4433 | p2, 4434 | p3 4435 | ) 4436 | ); 4437 | } 4438 | 4439 | function log( 4440 | address p0, 4441 | string memory p1, 4442 | uint256 p2, 4443 | address p3 4444 | ) internal view { 4445 | _sendLogPayload( 4446 | abi.encodeWithSignature( 4447 | "log(address,string,uint,address)", 4448 | p0, 4449 | p1, 4450 | p2, 4451 | p3 4452 | ) 4453 | ); 4454 | } 4455 | 4456 | function log( 4457 | address p0, 4458 | string memory p1, 4459 | string memory p2, 4460 | uint256 p3 4461 | ) internal view { 4462 | _sendLogPayload( 4463 | abi.encodeWithSignature( 4464 | "log(address,string,string,uint)", 4465 | p0, 4466 | p1, 4467 | p2, 4468 | p3 4469 | ) 4470 | ); 4471 | } 4472 | 4473 | function log( 4474 | address p0, 4475 | string memory p1, 4476 | string memory p2, 4477 | string memory p3 4478 | ) internal view { 4479 | _sendLogPayload( 4480 | abi.encodeWithSignature( 4481 | "log(address,string,string,string)", 4482 | p0, 4483 | p1, 4484 | p2, 4485 | p3 4486 | ) 4487 | ); 4488 | } 4489 | 4490 | function log( 4491 | address p0, 4492 | string memory p1, 4493 | string memory p2, 4494 | bool p3 4495 | ) internal view { 4496 | _sendLogPayload( 4497 | abi.encodeWithSignature( 4498 | "log(address,string,string,bool)", 4499 | p0, 4500 | p1, 4501 | p2, 4502 | p3 4503 | ) 4504 | ); 4505 | } 4506 | 4507 | function log( 4508 | address p0, 4509 | string memory p1, 4510 | string memory p2, 4511 | address p3 4512 | ) internal view { 4513 | _sendLogPayload( 4514 | abi.encodeWithSignature( 4515 | "log(address,string,string,address)", 4516 | p0, 4517 | p1, 4518 | p2, 4519 | p3 4520 | ) 4521 | ); 4522 | } 4523 | 4524 | function log( 4525 | address p0, 4526 | string memory p1, 4527 | bool p2, 4528 | uint256 p3 4529 | ) internal view { 4530 | _sendLogPayload( 4531 | abi.encodeWithSignature( 4532 | "log(address,string,bool,uint)", 4533 | p0, 4534 | p1, 4535 | p2, 4536 | p3 4537 | ) 4538 | ); 4539 | } 4540 | 4541 | function log( 4542 | address p0, 4543 | string memory p1, 4544 | bool p2, 4545 | string memory p3 4546 | ) internal view { 4547 | _sendLogPayload( 4548 | abi.encodeWithSignature( 4549 | "log(address,string,bool,string)", 4550 | p0, 4551 | p1, 4552 | p2, 4553 | p3 4554 | ) 4555 | ); 4556 | } 4557 | 4558 | function log( 4559 | address p0, 4560 | string memory p1, 4561 | bool p2, 4562 | bool p3 4563 | ) internal view { 4564 | _sendLogPayload( 4565 | abi.encodeWithSignature( 4566 | "log(address,string,bool,bool)", 4567 | p0, 4568 | p1, 4569 | p2, 4570 | p3 4571 | ) 4572 | ); 4573 | } 4574 | 4575 | function log( 4576 | address p0, 4577 | string memory p1, 4578 | bool p2, 4579 | address p3 4580 | ) internal view { 4581 | _sendLogPayload( 4582 | abi.encodeWithSignature( 4583 | "log(address,string,bool,address)", 4584 | p0, 4585 | p1, 4586 | p2, 4587 | p3 4588 | ) 4589 | ); 4590 | } 4591 | 4592 | function log( 4593 | address p0, 4594 | string memory p1, 4595 | address p2, 4596 | uint256 p3 4597 | ) internal view { 4598 | _sendLogPayload( 4599 | abi.encodeWithSignature( 4600 | "log(address,string,address,uint)", 4601 | p0, 4602 | p1, 4603 | p2, 4604 | p3 4605 | ) 4606 | ); 4607 | } 4608 | 4609 | function log( 4610 | address p0, 4611 | string memory p1, 4612 | address p2, 4613 | string memory p3 4614 | ) internal view { 4615 | _sendLogPayload( 4616 | abi.encodeWithSignature( 4617 | "log(address,string,address,string)", 4618 | p0, 4619 | p1, 4620 | p2, 4621 | p3 4622 | ) 4623 | ); 4624 | } 4625 | 4626 | function log( 4627 | address p0, 4628 | string memory p1, 4629 | address p2, 4630 | bool p3 4631 | ) internal view { 4632 | _sendLogPayload( 4633 | abi.encodeWithSignature( 4634 | "log(address,string,address,bool)", 4635 | p0, 4636 | p1, 4637 | p2, 4638 | p3 4639 | ) 4640 | ); 4641 | } 4642 | 4643 | function log( 4644 | address p0, 4645 | string memory p1, 4646 | address p2, 4647 | address p3 4648 | ) internal view { 4649 | _sendLogPayload( 4650 | abi.encodeWithSignature( 4651 | "log(address,string,address,address)", 4652 | p0, 4653 | p1, 4654 | p2, 4655 | p3 4656 | ) 4657 | ); 4658 | } 4659 | 4660 | function log( 4661 | address p0, 4662 | bool p1, 4663 | uint256 p2, 4664 | uint256 p3 4665 | ) internal view { 4666 | _sendLogPayload( 4667 | abi.encodeWithSignature( 4668 | "log(address,bool,uint,uint)", 4669 | p0, 4670 | p1, 4671 | p2, 4672 | p3 4673 | ) 4674 | ); 4675 | } 4676 | 4677 | function log( 4678 | address p0, 4679 | bool p1, 4680 | uint256 p2, 4681 | string memory p3 4682 | ) internal view { 4683 | _sendLogPayload( 4684 | abi.encodeWithSignature( 4685 | "log(address,bool,uint,string)", 4686 | p0, 4687 | p1, 4688 | p2, 4689 | p3 4690 | ) 4691 | ); 4692 | } 4693 | 4694 | function log( 4695 | address p0, 4696 | bool p1, 4697 | uint256 p2, 4698 | bool p3 4699 | ) internal view { 4700 | _sendLogPayload( 4701 | abi.encodeWithSignature( 4702 | "log(address,bool,uint,bool)", 4703 | p0, 4704 | p1, 4705 | p2, 4706 | p3 4707 | ) 4708 | ); 4709 | } 4710 | 4711 | function log( 4712 | address p0, 4713 | bool p1, 4714 | uint256 p2, 4715 | address p3 4716 | ) internal view { 4717 | _sendLogPayload( 4718 | abi.encodeWithSignature( 4719 | "log(address,bool,uint,address)", 4720 | p0, 4721 | p1, 4722 | p2, 4723 | p3 4724 | ) 4725 | ); 4726 | } 4727 | 4728 | function log( 4729 | address p0, 4730 | bool p1, 4731 | string memory p2, 4732 | uint256 p3 4733 | ) internal view { 4734 | _sendLogPayload( 4735 | abi.encodeWithSignature( 4736 | "log(address,bool,string,uint)", 4737 | p0, 4738 | p1, 4739 | p2, 4740 | p3 4741 | ) 4742 | ); 4743 | } 4744 | 4745 | function log( 4746 | address p0, 4747 | bool p1, 4748 | string memory p2, 4749 | string memory p3 4750 | ) internal view { 4751 | _sendLogPayload( 4752 | abi.encodeWithSignature( 4753 | "log(address,bool,string,string)", 4754 | p0, 4755 | p1, 4756 | p2, 4757 | p3 4758 | ) 4759 | ); 4760 | } 4761 | 4762 | function log( 4763 | address p0, 4764 | bool p1, 4765 | string memory p2, 4766 | bool p3 4767 | ) internal view { 4768 | _sendLogPayload( 4769 | abi.encodeWithSignature( 4770 | "log(address,bool,string,bool)", 4771 | p0, 4772 | p1, 4773 | p2, 4774 | p3 4775 | ) 4776 | ); 4777 | } 4778 | 4779 | function log( 4780 | address p0, 4781 | bool p1, 4782 | string memory p2, 4783 | address p3 4784 | ) internal view { 4785 | _sendLogPayload( 4786 | abi.encodeWithSignature( 4787 | "log(address,bool,string,address)", 4788 | p0, 4789 | p1, 4790 | p2, 4791 | p3 4792 | ) 4793 | ); 4794 | } 4795 | 4796 | function log( 4797 | address p0, 4798 | bool p1, 4799 | bool p2, 4800 | uint256 p3 4801 | ) internal view { 4802 | _sendLogPayload( 4803 | abi.encodeWithSignature( 4804 | "log(address,bool,bool,uint)", 4805 | p0, 4806 | p1, 4807 | p2, 4808 | p3 4809 | ) 4810 | ); 4811 | } 4812 | 4813 | function log( 4814 | address p0, 4815 | bool p1, 4816 | bool p2, 4817 | string memory p3 4818 | ) internal view { 4819 | _sendLogPayload( 4820 | abi.encodeWithSignature( 4821 | "log(address,bool,bool,string)", 4822 | p0, 4823 | p1, 4824 | p2, 4825 | p3 4826 | ) 4827 | ); 4828 | } 4829 | 4830 | function log( 4831 | address p0, 4832 | bool p1, 4833 | bool p2, 4834 | bool p3 4835 | ) internal view { 4836 | _sendLogPayload( 4837 | abi.encodeWithSignature( 4838 | "log(address,bool,bool,bool)", 4839 | p0, 4840 | p1, 4841 | p2, 4842 | p3 4843 | ) 4844 | ); 4845 | } 4846 | 4847 | function log( 4848 | address p0, 4849 | bool p1, 4850 | bool p2, 4851 | address p3 4852 | ) internal view { 4853 | _sendLogPayload( 4854 | abi.encodeWithSignature( 4855 | "log(address,bool,bool,address)", 4856 | p0, 4857 | p1, 4858 | p2, 4859 | p3 4860 | ) 4861 | ); 4862 | } 4863 | 4864 | function log( 4865 | address p0, 4866 | bool p1, 4867 | address p2, 4868 | uint256 p3 4869 | ) internal view { 4870 | _sendLogPayload( 4871 | abi.encodeWithSignature( 4872 | "log(address,bool,address,uint)", 4873 | p0, 4874 | p1, 4875 | p2, 4876 | p3 4877 | ) 4878 | ); 4879 | } 4880 | 4881 | function log( 4882 | address p0, 4883 | bool p1, 4884 | address p2, 4885 | string memory p3 4886 | ) internal view { 4887 | _sendLogPayload( 4888 | abi.encodeWithSignature( 4889 | "log(address,bool,address,string)", 4890 | p0, 4891 | p1, 4892 | p2, 4893 | p3 4894 | ) 4895 | ); 4896 | } 4897 | 4898 | function log( 4899 | address p0, 4900 | bool p1, 4901 | address p2, 4902 | bool p3 4903 | ) internal view { 4904 | _sendLogPayload( 4905 | abi.encodeWithSignature( 4906 | "log(address,bool,address,bool)", 4907 | p0, 4908 | p1, 4909 | p2, 4910 | p3 4911 | ) 4912 | ); 4913 | } 4914 | 4915 | function log( 4916 | address p0, 4917 | bool p1, 4918 | address p2, 4919 | address p3 4920 | ) internal view { 4921 | _sendLogPayload( 4922 | abi.encodeWithSignature( 4923 | "log(address,bool,address,address)", 4924 | p0, 4925 | p1, 4926 | p2, 4927 | p3 4928 | ) 4929 | ); 4930 | } 4931 | 4932 | function log( 4933 | address p0, 4934 | address p1, 4935 | uint256 p2, 4936 | uint256 p3 4937 | ) internal view { 4938 | _sendLogPayload( 4939 | abi.encodeWithSignature( 4940 | "log(address,address,uint,uint)", 4941 | p0, 4942 | p1, 4943 | p2, 4944 | p3 4945 | ) 4946 | ); 4947 | } 4948 | 4949 | function log( 4950 | address p0, 4951 | address p1, 4952 | uint256 p2, 4953 | string memory p3 4954 | ) internal view { 4955 | _sendLogPayload( 4956 | abi.encodeWithSignature( 4957 | "log(address,address,uint,string)", 4958 | p0, 4959 | p1, 4960 | p2, 4961 | p3 4962 | ) 4963 | ); 4964 | } 4965 | 4966 | function log( 4967 | address p0, 4968 | address p1, 4969 | uint256 p2, 4970 | bool p3 4971 | ) internal view { 4972 | _sendLogPayload( 4973 | abi.encodeWithSignature( 4974 | "log(address,address,uint,bool)", 4975 | p0, 4976 | p1, 4977 | p2, 4978 | p3 4979 | ) 4980 | ); 4981 | } 4982 | 4983 | function log( 4984 | address p0, 4985 | address p1, 4986 | uint256 p2, 4987 | address p3 4988 | ) internal view { 4989 | _sendLogPayload( 4990 | abi.encodeWithSignature( 4991 | "log(address,address,uint,address)", 4992 | p0, 4993 | p1, 4994 | p2, 4995 | p3 4996 | ) 4997 | ); 4998 | } 4999 | 5000 | function log( 5001 | address p0, 5002 | address p1, 5003 | string memory p2, 5004 | uint256 p3 5005 | ) internal view { 5006 | _sendLogPayload( 5007 | abi.encodeWithSignature( 5008 | "log(address,address,string,uint)", 5009 | p0, 5010 | p1, 5011 | p2, 5012 | p3 5013 | ) 5014 | ); 5015 | } 5016 | 5017 | function log( 5018 | address p0, 5019 | address p1, 5020 | string memory p2, 5021 | string memory p3 5022 | ) internal view { 5023 | _sendLogPayload( 5024 | abi.encodeWithSignature( 5025 | "log(address,address,string,string)", 5026 | p0, 5027 | p1, 5028 | p2, 5029 | p3 5030 | ) 5031 | ); 5032 | } 5033 | 5034 | function log( 5035 | address p0, 5036 | address p1, 5037 | string memory p2, 5038 | bool p3 5039 | ) internal view { 5040 | _sendLogPayload( 5041 | abi.encodeWithSignature( 5042 | "log(address,address,string,bool)", 5043 | p0, 5044 | p1, 5045 | p2, 5046 | p3 5047 | ) 5048 | ); 5049 | } 5050 | 5051 | function log( 5052 | address p0, 5053 | address p1, 5054 | string memory p2, 5055 | address p3 5056 | ) internal view { 5057 | _sendLogPayload( 5058 | abi.encodeWithSignature( 5059 | "log(address,address,string,address)", 5060 | p0, 5061 | p1, 5062 | p2, 5063 | p3 5064 | ) 5065 | ); 5066 | } 5067 | 5068 | function log( 5069 | address p0, 5070 | address p1, 5071 | bool p2, 5072 | uint256 p3 5073 | ) internal view { 5074 | _sendLogPayload( 5075 | abi.encodeWithSignature( 5076 | "log(address,address,bool,uint)", 5077 | p0, 5078 | p1, 5079 | p2, 5080 | p3 5081 | ) 5082 | ); 5083 | } 5084 | 5085 | function log( 5086 | address p0, 5087 | address p1, 5088 | bool p2, 5089 | string memory p3 5090 | ) internal view { 5091 | _sendLogPayload( 5092 | abi.encodeWithSignature( 5093 | "log(address,address,bool,string)", 5094 | p0, 5095 | p1, 5096 | p2, 5097 | p3 5098 | ) 5099 | ); 5100 | } 5101 | 5102 | function log( 5103 | address p0, 5104 | address p1, 5105 | bool p2, 5106 | bool p3 5107 | ) internal view { 5108 | _sendLogPayload( 5109 | abi.encodeWithSignature( 5110 | "log(address,address,bool,bool)", 5111 | p0, 5112 | p1, 5113 | p2, 5114 | p3 5115 | ) 5116 | ); 5117 | } 5118 | 5119 | function log( 5120 | address p0, 5121 | address p1, 5122 | bool p2, 5123 | address p3 5124 | ) internal view { 5125 | _sendLogPayload( 5126 | abi.encodeWithSignature( 5127 | "log(address,address,bool,address)", 5128 | p0, 5129 | p1, 5130 | p2, 5131 | p3 5132 | ) 5133 | ); 5134 | } 5135 | 5136 | function log( 5137 | address p0, 5138 | address p1, 5139 | address p2, 5140 | uint256 p3 5141 | ) internal view { 5142 | _sendLogPayload( 5143 | abi.encodeWithSignature( 5144 | "log(address,address,address,uint)", 5145 | p0, 5146 | p1, 5147 | p2, 5148 | p3 5149 | ) 5150 | ); 5151 | } 5152 | 5153 | function log( 5154 | address p0, 5155 | address p1, 5156 | address p2, 5157 | string memory p3 5158 | ) internal view { 5159 | _sendLogPayload( 5160 | abi.encodeWithSignature( 5161 | "log(address,address,address,string)", 5162 | p0, 5163 | p1, 5164 | p2, 5165 | p3 5166 | ) 5167 | ); 5168 | } 5169 | 5170 | function log( 5171 | address p0, 5172 | address p1, 5173 | address p2, 5174 | bool p3 5175 | ) internal view { 5176 | _sendLogPayload( 5177 | abi.encodeWithSignature( 5178 | "log(address,address,address,bool)", 5179 | p0, 5180 | p1, 5181 | p2, 5182 | p3 5183 | ) 5184 | ); 5185 | } 5186 | 5187 | function log( 5188 | address p0, 5189 | address p1, 5190 | address p2, 5191 | address p3 5192 | ) internal view { 5193 | _sendLogPayload( 5194 | abi.encodeWithSignature( 5195 | "log(address,address,address,address)", 5196 | p0, 5197 | p1, 5198 | p2, 5199 | p3 5200 | ) 5201 | ); 5202 | } 5203 | } 5204 | --------------------------------------------------------------------------------