contract TradeableERC721Token is ERC721Full, MultiOwned {
  using Strings for string;

  constructor(string memory _name, string memory _symbol) ERC721Full(_name, _symbol) public {
  }

  /**
    * @dev Mints a token to an address with a tokenURI.
    * @param _to address of the future owner of the token
    */
  function mintTo(address _to, uint256 _tokenId) public onlyMultiOwners {
    _mint(_to, _tokenId);
  }

  function baseTokenURI() public view returns (string memory) {
    return "";
  }

  function tokenURI(uint256 _tokenId) external view returns (string memory) {
    return Strings.strConcat(
        baseTokenURI(),
        Strings.uint2str(_tokenId)
    );
  }
}
/**
 * @title TradeableERC721Token
 * TradeableERC721Token - ERC721 contract that whitelists a trading address, and has minting functionality.
 */
function mintTo(address _to, uint256 _tokenId) public onlyMultiOwners {
  _mint(_to, _tokenId);
}

/**
 * @dev Mints a token to an address with a tokenURI.
 * @param _to address of the future owner of the token
 */