1// SPDX-License-Identifier: OTHER23pragma solidity >=0.8.0 <0.9.0;45import "../api/UniqueNFT.sol";67contract UniqueNFTProxy is UniqueNFT {8 UniqueNFT proxied;910 constructor(address _proxied) UniqueNFT() {11 proxied = UniqueNFT(_proxied);12 }1314 function name() external view override returns (string memory) {15 return proxied.name();16 }1718 function symbol() external view override returns (string memory) {19 return proxied.symbol();20 }2122 function totalSupply() external view override returns (uint256) {23 return proxied.totalSupply();24 }2526 function balanceOf(address owner) external view override returns (uint256) {27 return proxied.balanceOf(owner);28 }2930 function ownerOf(uint256 tokenId) external view override returns (address) {31 return proxied.ownerOf(tokenId);32 }3334 function safeTransferFromWithData(35 address from,36 address to,37 uint256 tokenId,38 bytes memory data39 ) external override {40 return proxied.safeTransferFromWithData(from, to, tokenId, data);41 }4243 function safeTransferFrom(44 address from,45 address to,46 uint256 tokenId47 ) external override {48 return proxied.safeTransferFrom(from, to, tokenId);49 }5051 function transferFrom(52 address from,53 address to,54 uint256 tokenId55 ) external override {56 return proxied.transferFrom(from, to, tokenId);57 }5859 function approve(address approved, uint256 tokenId) external override {60 return proxied.approve(approved, tokenId);61 }6263 function setApprovalForAll(address operator, bool approved)64 external65 override66 {67 return proxied.setApprovalForAll(operator, approved);68 }6970 function getApproved(uint256 tokenId)71 external72 view73 override74 returns (address)75 {76 return proxied.getApproved(tokenId);77 }7879 function isApprovedForAll(address owner, address operator)80 external81 view82 override83 returns (address)84 {85 return proxied.isApprovedForAll(owner, operator);86 }8788 function burn(uint256 tokenId) external override {89 return proxied.burn(tokenId);90 }9192 function tokenByIndex(uint256 index)93 external94 view95 override96 returns (uint256)97 {98 return proxied.tokenByIndex(index);99 }100101 function tokenOfOwnerByIndex(address owner, uint256 index)102 external103 view104 override105 returns (uint256)106 {107 return proxied.tokenOfOwnerByIndex(owner, index);108 }109110 function tokenURI(uint256 tokenId)111 external112 view113 override114 returns (string memory)115 {116 return proxied.tokenURI(tokenId);117 }118119 function mintingFinished() external view override returns (bool) {120 return proxied.mintingFinished();121 }122123 function mint(address to)124 external125 override126 returns (uint256)127 {128 return proxied.mint(to);129 }130131 function mintWithTokenURI(132 address to,133 string memory tokenUri134 ) external override returns (uint256) {135 return proxied.mintWithTokenURI(to, tokenUri);136 }137138 function finishMinting() external override returns (bool) {139 return proxied.finishMinting();140 }141142 function transfer(address to, uint256 tokenId) external override {143 return proxied.transfer(to, tokenId);144 }145146 function nextTokenId() external view override returns (uint256) {147 return proxied.nextTokenId();148 }149150 function burnFrom(address from, uint256 tokenId) external override {151 return proxied.burnFrom(from, tokenId);152 }153154 function supportsInterface(bytes4 interfaceId)155 external156 view157 override158 returns (bool)159 {160 return proxied.supportsInterface(interfaceId);161 }162163 function mintBulk(address to, uint256[] memory tokenIds)164 external165 override166 returns (bool)167 {168 return proxied.mintBulk(to, tokenIds);169 }170171 function mintBulkWithTokenURI(address to, TokenUri[] memory tokens)172 external173 override174 returns (bool)175 {176 return proxied.mintBulkWithTokenURI(to, tokens);177 }178179 function setProperty(string memory key, string memory value) external override {180 return proxied.setProperty(key, value);181 }182183 function deleteProperty(string memory key) external override {184 return proxied.deleteProperty(key);185 }186}