docs: @Override
      public void visitGETSTATIC(GETSTATIC obj) {
          if (getNumWordsProduced(obj) != 1) {
              super.visitGETSTATIC(obj);
              return;
          }
  
          if (checkForKnownValue(obj)) {
              return;
          }
          XField field = XFactory.createXField(obj, cpg);
          if (field.isFinal()) {
              Item summary = AnalysisContext.currentAnalysisContext().getFieldSummary().getSummary(field);
              if (summary.isNull()) {
                  produce(IsNullValue.nullValue());
                  return;
              }
          }
          if ("java.util.logging.Level".equals(field.getClassName()) && "SEVERE".equals(field.getName())
                  || "org.apache.log4j.Level".equals(field.getClassName())
                  && ("ERROR".equals(field.getName()) || "FATAL".equals(field.getName()))) {
              getFrame().toExceptionValues();
          }
  
          if (field.getName().startsWith("class$")) {
              produce(IsNullValue.nonNullValue());
              return;
          }
          NullnessAnnotation annotation = AnalysisContext.currentAnalysisContext().getNullnessAnnotationDatabase()
                  .getResolvedAnnotation(field, false);
          if (annotation == NullnessAnnotation.NONNULL) {
              modelNormalInstruction(obj, getNumWordsConsumed(obj), 0);
              produce(IsNullValue.nonNullValue());
          } else if (annotation == NullnessAnnotation.CHECK_FOR_NULL) {
              modelNormalInstruction(obj, getNumWordsConsumed(obj), 0);
              produce(IsNullValue.nullOnSimplePathValue().markInformationAsComingFromFieldValue(field));
          } else {
  
              super.visitGETSTATIC(obj);
          }
      }