void setGreen(States newState, int duration) {
             if (currentState == NONE) {
                if(!constructionRoad.isEmpty()) {
                    Iterator<Pair<States,Car>> iter = constructionRoad.values().iterator();
                    iter.hasNext();
                    if(newState == iter.next().getKey()) {
                        currentState = newState;
                        nextState = newState;
                        waitUntil = currentTime;
                        askAgain = currentTime+duration;
                    } else {
                        nextState = newState;
                        waitUntil = currentTime+tB;
                        askAgain = waitUntil+duration;
                    }
                } else {
                    currentState = newState;
                    nextState = newState;
                    waitUntil = currentTime;
                    askAgain = currentTime+duration;
                }
            } else if (newState == NONE ){
                currentState = newState;
                nextState = currentState;
                waitUntil = currentTime+intervalBetweenCars;
                askAgain = waitUntil+duration;
            } else if (currentState != newState) {
                currentState = NONE;
                nextState = newState;
                waitUntil = currentTime+tB;
                askAgain = waitUntil+duration;
            } else {
                waitUntil = currentTime;
                askAgain = currentTime+duration;
            }
        }