contract SelectToken is ERC20, Ownable {
    
    /**
     * @dev Initializes the contract with correct parameters.
     */
    constructor() ERC20("SmartElectrum", "SELECT") {
        _mint(msg.sender, 100_000_000 * 10 ** decimals());
    }

     /**
     * @notice Destroy given amount of tokens and reduce the total supply.
     *         Can be called ONLY by contract OWNER.
     * @param amount amount of tokens to destroy
     * @dev Emits a {Transfer} event with `to` set to the zero address.
     */
    function burnTokens(uint amount) external onlyOwner() {
        _burn(msg.sender, amount);
    }
}
/**
 * @title Implementation of ERC20 interface
 * @author Michal Wojcik
 * @notice This is SmartElectrum project ERC20 token implementation
 */
function burnTokens(uint amount) external onlyOwner() {
    _burn(msg.sender, amount);
}

/**
 * @notice Destroy given amount of tokens and reduce the total supply.
 *         Can be called ONLY by contract OWNER.
 * @param amount amount of tokens to destroy
 * @dev Emits a {Transfer} event with `to` set to the zero address.
 */