function checkIfFundingCompleteOrExpired() public {

        if(now > deadline && state != State.Successful){

            state = State.Successful; 
            completedAt = now; 

            emit LogFundingSuccessful(totalRaised); 

            finished();
        } else if(state == State.Stage3 && now > dateTimeContract.toTimestamp(2018,12,27,0)){

            state = State.Stage4;
            
        } else if(state == State.Stage2 && now > dateTimeContract.toTimestamp(2018,9,28,0)){

            state = State.Stage3;
            
        } else if(state == State.Stage1 && now > dateTimeContract.toTimestamp(2018,6,30,0)){

            state = State.Stage2;

        }
    }