class ConnectionProperties {
    private final List<PropertySet> propertySets;
    private final List<Property> properties;

    public ConnectionProperties() {
        propertySets = new LinkedList<>();
        properties = new LinkedList<>();
    }

    public Properties buildProperties() {<FILL_FUNCTION_BODY>}

    public void add(PropertySet propertySet) {
        propertySets.add(propertySet);
    }

    public void addConnectionProperty(Property property) {
        properties.add(property);
    }
}

        Properties retProps = new Properties();
        for(PropertySet propertySet : propertySets) {
            retProps.putAll(propertySet.getProperties());
        }

        for(Property property : properties) {
            retProps.setProperty(property.getName(), property.getValue());
        }
        return retProps;
    
<no_super_class>