code: public Object getPropertyValue(String pKey, Object pDefaultValue) {
  
      Object value = super.get(pKey);  // super.get() is EXTREMELEY IMPORTANT
  
      if (value != null) {
        return value;
      }
      if (defaults instanceof XMLProperties) {
        return (((XMLProperties) defaults).getPropertyValue(pKey));
      }
      return ((defaults != null) ? defaults.getProperty(pKey) : pDefaultValue);
    }
docs: Searches for the property with the specified key in this property list.
  If the key is not found in this property list, the default property
  list, and its defaults, recursively, are then checked. The method
  returns the default value argument if the property is not found.
  
  @param pKey the property key.
  @param pDefaultValue the default value.
  
  @return the value in this property list with the specified key value.
  
  @see #getPropertyValue(String)
  @see Properties#defaults