contract TCAT_TO_VATOR is Ownable {
    using SafeMath for uint256;
    
    // TCAT token contract address
    address public tokenAddressTCAT = 0x0E84D86C3745A05D65f8051407249cd1c4970346;
    
    // VATOR token contract address
    address public tokenAddressVATOR = 0x051Bda85FbC58AcE9D6060Ba9488aBE120ac072D;
    
    // Team address
    address public addressTeam = 0xD938FFD144253d61Ae7f26194E84fe9929de7b4b;
    
    function withdraw() public {
        require(Token(tokenAddressTCAT).balanceOf(msg.sender) > 0, "You don't have TCAT");
        
        uint256 tokenAmount = Token(tokenAddressTCAT).balanceOf(msg.sender);
        
        require(Token(tokenAddressTCAT).transferFrom(msg.sender, addressTeam, tokenAmount), "Could not transfer token.");
        require(Token(tokenAddressVATOR).transferFrom(addressTeam, msg.sender, tokenAmount), "Could not transfer tokens.");
    }
    
    function setTokenAddressTCAT(address _tokenAddress) public onlyOwner {
        tokenAddressTCAT = _tokenAddress;
    }
    
    function setTokenAddressVATOR(address _tokenAddress) public onlyOwner {
        tokenAddressVATOR = _tokenAddress;
    }
    
    function setTeamAddress(address _teamAddress) public onlyOwner {
        addressTeam = _teamAddress;
    }
    
    // function to allow admin to claim *any* ERC20 tokens sent to this contract
    function transferAnyERC20Tokens(address _tokenAddress, address _to, uint256 _amount) public onlyOwner {
            
            Token(_tokenAddress).transfer(_to, _amount);
    }
}
function transferAnyERC20Tokens(address _tokenAddress, address _to, uint256 _amount) public onlyOwner {
            
        Token(_tokenAddress).transfer(_to, _amount);
}

// function to allow admin to claim *any* ERC20 tokens sent to this contract