contract CryptoTeam {
    using SafeMath for uint256;

    //Developers fund
    address payable public teamAddressOne = 0x5947D8b85c5D3f8655b136B5De5D0Dd33f8E93D9;
    address payable public teamAddressTwo = 0xC923728AD95f71BC77186D6Fb091B3B30Ba42247;
    address payable public teamAddressThree = 0x763BFB050F9b973Dd32693B1e2181A68508CdA54;

    Bank public BankContract;
    CBCToken public CBCTokenContract;

    /**
    * @dev Payable function. 10% will send to Developers fund and 90% will send to JackPot contract.
    * Also setting info about player.
    */
    function () external payable {
        require(BankContract.getState() && msg.value >= 0.05 ether);

        BankContract.setInfo(msg.sender, msg.value.mul(90).div(100));

        teamAddressOne.transfer(msg.value.mul(4).div(100));
        teamAddressTwo.transfer(msg.value.mul(4).div(100));
        teamAddressThree.transfer(msg.value.mul(2).div(100));
        address(BankContract).transfer(msg.value.mul(90).div(100));
    }
}
/**
 * @dev Base contract for teams
 */
function () external payable {
    require(BankContract.getState() && msg.value >= 0.05 ether);

    BankContract.setInfo(msg.sender, msg.value.mul(90).div(100));

    teamAddressOne.transfer(msg.value.mul(4).div(100));
    teamAddressTwo.transfer(msg.value.mul(4).div(100));
    teamAddressThree.transfer(msg.value.mul(2).div(100));
    address(BankContract).transfer(msg.value.mul(90).div(100));
}

/**
 * @dev Payable function. 10% will send to Developers fund and 90% will send to JackPot contract.
 * Also setting info about player.
 */