github.com/status-im/status-go@v1.1.0/contracts/community-tokens/contracts/OwnerToken.sol (about) 1 // SPDX-License-Identifier: Mozilla Public License 2.0 2 pragma solidity ^0.8.17; 3 4 import { BaseToken } from "./BaseToken.sol"; 5 import { CommunityOwnable } from "../CommunityOwnable.sol"; 6 7 contract OwnerToken is BaseToken { 8 bytes public signerPublicKey; 9 10 constructor( 11 string memory _name, 12 string memory _symbol, 13 string memory _baseTokenURI, 14 address _receiver, 15 bytes memory _signerPublicKey 16 ) 17 BaseToken(_name, _symbol, 1, false, true, _baseTokenURI, address(this), address(this)) 18 { 19 signerPublicKey = _signerPublicKey; 20 address[] memory addresses = new address[](1); 21 addresses[0] = _receiver; 22 _mintTo(addresses); 23 } 24 25 function setMaxSupply(uint256 _newMaxSupply) external override onlyCommunityOwnerOrTokenMaster { 26 revert("max supply locked"); 27 } 28 29 function setSignerPublicKey(bytes memory _newSignerPublicKey) external onlyCommunityOwnerOrTokenMaster { 30 signerPublicKey = _newSignerPublicKey; 31 } 32 }