code: public Properties getProperties() {
      // a.putAll(b) iterates over the entries of b. Synchronizing on b prevents concurrent modification on b.
      synchronized (this.specProperties) {
        Properties props = new Properties();
        if (this.commonProperties != null) {
          props.putAll(this.commonProperties);
        }
        props.putAll(this.specProperties);
        return props;
      }
    }
docs: Return a copy of the underlying {@link Properties} object.
  
  @return A copy of the underlying {@link Properties} object.