contract DaoCasinoToken is ERC20Token, Owned {

    // ------------------------------------------------------------------------
    // Token information
    // ------------------------------------------------------------------------
    string public constant name = "Dao.Casino";
    string public constant symbol = "BET";
    uint8 public constant decimals = 18;

    function DaoCasinoToken() {
    }

    // ------------------------------------------------------------------------
    // Fill - to populate tokens from the old token contract
    // ------------------------------------------------------------------------
    // From https://github.com/BitySA/whetcwithdraw/tree/master/daobalance
    bool public sealed;
    uint256 constant D160 = 0x0010000000000000000000000000000000000000000;
    // The 160 LSB is the address of the balance
    // The 96 MSB is the balance of that address.
    function fill(uint256[] data) onlyOwner {
        require(!sealed);
        for (uint256 i = 0; i < data.length; i++) {
            address account = address(data[i] & (D160-1));
            uint256 amount = data[i] / D160;
            // Prevent duplicates
            if (balances[account] == 0) {
                balances[account] = amount;
                _totalSupply = _totalSupply.add(amount);
                Transfer(0x0, account, amount);
            }
        }
    }

    // ------------------------------------------------------------------------
    // After sealing, no more filling is possible
    // ------------------------------------------------------------------------
    function seal() onlyOwner {
        require(!sealed);
        sealed = true;
    }

    // ------------------------------------------------------------------------
    // Owner can transfer out any accidentally sent ERC20 tokens
    // ------------------------------------------------------------------------
    function transferAnyERC20Token(address tokenAddress, uint amount)
      onlyOwner returns (bool success) 
    {
        return ERC20Token(tokenAddress).transfer(owner, amount);
    }
}
function seal() onlyOwner {
        require(!sealed);
        sealed = true;
    }
// ------------------------------------------------------------------------
// After sealing, no more filling is possible
// ------------------------------------------------------------------------