function buyTokens(address SEcoinbuyer) public payable {
        require(SEcoinbuyer != address(0x0));
        require(selltime());
        require(msg.value>=1*1e16 && msg.value<=200*1e18);
        
        
        SEcoinAmounts = calculateObtainedSEcoin(msg.value);
        SEcoinAmountssend= calculateObtainedSEcoinsend(SEcoinAmounts);
        
        
        weiRaised = weiRaised.add(msg.value);
        weiSold = weiSold.add(SEcoinAmounts);
            
        
        require(ERC20Basic(SEcoin).transfer(SEcoinbuyer, SEcoinAmountssend));
            
        
        buyer(msg.sender);
        checkRate();
        forwardFunds();
            
        
        emit TokenPurchase(msg.sender, SEcoinbuyer, msg.value, SEcoinAmounts,SEcoinAmountssend);
    }