docs: public void addMetaBeanProperty(MetaBeanProperty mp) {
  
          MetaProperty staticProperty = establishStaticMetaProperty(mp);
          if (staticProperty != null) {
              staticPropertyIndex.put(mp.getName(), mp);
          } else {
  
              SingleKeyHashMap propertyMap = classPropertyIndex.getNotNull(theCachedClass);
              //keep field
              CachedField field;
              MetaProperty old = (MetaProperty) propertyMap.get(mp.getName());
              if (old != null) {
                  if (old instanceof MetaBeanProperty) {
                      field = ((MetaBeanProperty) old).getField();
                  } else if (old instanceof MultipleSetterProperty) {
                      field = ((MultipleSetterProperty)old).getField();
                  } else {
                      field = (CachedField) old;
                  }
                  mp.setField(field);
              }
  
              // put it in the list
              // this will overwrite a possible field property
              propertyMap.put(mp.getName(), mp);
          }
  
      }