code: public Property getProperty(String... name) {
          if (name == null || name.length == 0) return null;
  
          for (Property p : properties) {
              if (Objects.equals(name[0], p.name)) {
                  if (name.length == 1)
                      return p;
                  else
                      return p.getProperty(Arrays.copyOfRange(name, 1, name.length));
              }
          }
          return null;
      }
docs: Returns the property if available or <code>null</code> otherwise.
  Subproperties can be requested by submitting the sequence of properties.