private boolean stopConditionsProcessor(StopConditions stopCondition) {
        boolean any = (stopCondition == StopConditions.ANY);
        // EXCEEDED_LIMIT_TRANSMISSION
        if (stopCondition == StopConditions.EXCEEDED_LIMIT_TRANSMISSION || any) {
            if (receivedPackageCount >= settings.getPacketsQuantity()) {
                Console.log("[UDP] Limit transmission exceeded!");
                return true;
            }
        }
        // TIMEOUT
        if (stopCondition == StopConditions.TIMEOUT || any) {
            if ((System.currentTimeMillis() - timer) >= settings.getTimeout()) {
                Console.log("[UDP] Timeout reached!");
                return true;
            }
        }
        // ACHIVED_CONFIDENCE_INTERVAL_WIDTH
        if (stopCondition == StopConditions.ACHIVED_CONFIDENCE_INTERVAL_WIDTH || any) {
            if (confidenceInterval >= settings.getConfidenceInterval()) {
                Console.log("[UDP] Confidence interval width achived!");
                return true;
            }
        }
        return false;
    }