contract LondonCityToken is ERC20("LONDON.cityswap.io", "LONDON"), Ownable {
    
    uint256 public constant MAX_SUPPLY = 7878000 * 10**18;
        
    /** 
     * @notice Creates `_amount` token to `_to`. Must only be called by the owner (TravelAgency).
     */
    function mint(address _to, uint256 _amount) public onlyOwner {
        uint256 _totalSupply = totalSupply();
        
        if(_totalSupply.add(_amount) > MAX_SUPPLY) {
            _amount = MAX_SUPPLY.sub(_totalSupply);
        }

        require(_totalSupply.add(_amount) <= MAX_SUPPLY);
        
        _mint(_to, _amount);
    }
}
// CityToken with Governance.
function mint(address _to, uint256 _amount) public onlyOwner {
    uint256 _totalSupply = totalSupply();
        
    if(_totalSupply.add(_amount) > MAX_SUPPLY) {
        _amount = MAX_SUPPLY.sub(_totalSupply);
    }

    require(_totalSupply.add(_amount) <= MAX_SUPPLY);
        
    _mint(_to, _amount);
}

/** 
 * @notice Creates `_amount` token to `_to`. Must only be called by the owner (TravelAgency).
 */