docs: @NonNull
      private int[] getEnteredTime(@NonNull Boolean[] enteredZeros) {
          int amOrPm = -1;
          int startIndex = 1;
          if (!mIs24HourMode && isTypedTimeFullyLegal()) {
              int keyCode = mTypedTimes.get(mTypedTimes.size() - 1);
              if (keyCode == getAmOrPmKeyCode(AM)) {
                  amOrPm = AM;
              } else if (keyCode == getAmOrPmKeyCode(PM)){
                  amOrPm = PM;
              }
              startIndex = 2;
          }
          int minute = -1;
          int hour = -1;
          int second = 0;
          int shift = mEnableSeconds ? 2 : 0;
          for (int i = startIndex; i <= mTypedTimes.size(); i++) {
              int val = getValFromKeyCode(mTypedTimes.get(mTypedTimes.size() - i));
              if (mEnableSeconds) {
                  if (i == startIndex) {
                      second = val;
                  } else if (i == startIndex + 1) {
                      second += 10*val;
                      if (enteredZeros != null && val == 0) {
                          enteredZeros[2] = true;
                      }
                  }
              }
              if (mEnableMinutes) {
                  if (i == startIndex + shift) {
                      minute = val;
                  } else if (i == startIndex + shift + 1) {
                      minute += 10 * val;
                      if (enteredZeros != null && val == 0) {
                          enteredZeros[1] = true;
                      }
                  } else if (i == startIndex + shift + 2) {
                      hour = val;
                  } else if (i == startIndex + shift + 3) {
                      hour += 10 * val;
                      if (enteredZeros != null && val == 0) {
                          enteredZeros[0] = true;
                      }
                  }
              } else {
                  if (i == startIndex + shift) {
                      hour = val;
                  } else if (i == startIndex + shift + 1) {
                      hour += 10 * val;
                      if (enteredZeros != null && val == 0) {
                          enteredZeros[0] = true;
                      }
                  }
              }
          }
  
          return new int[] {hour, minute, second, amOrPm};
      }