1// SPDX-License-Identifier: OTHER2// This code is automatically generated34pragma solidity >=0.8.0 <0.9.0;56// Common stubs holder7contract Dummy {8 uint8 dummy;9 string stub_error = "this contract is implemented in native";10}1112contract ERC165 is Dummy {13 function supportsInterface(bytes4 interfaceID)14 external15 view16 returns (bool)17 {18 require(false, stub_error);19 interfaceID;20 return true;21 }22}2324// Inline25contract ERC20Events {26 event Transfer(address indexed from, address indexed to, uint256 value);27 event Approval(28 address indexed owner,29 address indexed spender,30 uint256 value31 );32}3334contract ERC20 is Dummy, ERC165, ERC20Events {35 // Selector: name() 06fdde0336 function name() public view returns (string memory) {37 require(false, stub_error);38 dummy;39 return "";40 }4142 // Selector: symbol() 95d89b4143 function symbol() public view returns (string memory) {44 require(false, stub_error);45 dummy;46 return "";47 }4849 // Selector: totalSupply() 18160ddd50 function totalSupply() public view returns (uint256) {51 require(false, stub_error);52 dummy;53 return 0;54 }5556 // Selector: decimals() 313ce56757 function decimals() public view returns (uint8) {58 require(false, stub_error);59 dummy;60 return 0;61 }6263 // Selector: balanceOf(address) 70a0823164 function balanceOf(address owner) public view returns (uint256) {65 require(false, stub_error);66 owner;67 dummy;68 return 0;69 }7071 // Selector: transfer(address,uint256) a9059cbb72 function transfer(address to, uint256 amount) public returns (bool) {73 require(false, stub_error);74 to;75 amount;76 dummy = 0;77 return false;78 }7980 // Selector: transferFrom(address,address,uint256) 23b872dd81 function transferFrom(82 address from,83 address to,84 uint256 amount85 ) public returns (bool) {86 require(false, stub_error);87 from;88 to;89 amount;90 dummy = 0;91 return false;92 }9394 // Selector: approve(address,uint256) 095ea7b395 function approve(address spender, uint256 amount) public returns (bool) {96 require(false, stub_error);97 spender;98 amount;99 dummy = 0;100 return false;101 }102103 // Selector: allowance(address,address) dd62ed3e104 function allowance(address owner, address spender)105 public106 view107 returns (uint256)108 {109 require(false, stub_error);110 owner;111 spender;112 dummy;113 return 0;114 }115}116117contract UniqueFungible is Dummy, ERC165, ERC20 {}