docs: private void detectImplmentedExtension() {
          if (isImplExtRegistered == false) {
              Object o = getThis();
              Class thisClass = o.getClass();
  
              // superclass interfaces
              Class[] declared = thisClass.getSuperclass().getInterfaces();
              for (Class declare : declared) {
                  detectImplmentedExtension(declare);
              }
  
              // subclass interfaces
              declared = thisClass.getInterfaces();
              for (Class declare : declared) {
                  detectImplmentedExtension(declare);
              }
              isImplExtRegistered = true;
          }
      }