<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_framework(cls, properties=None):
 # type: (Optional[dict]) -> Framework """ If it doesn't exist yet, creates a framework with the given properties, else returns the current framework instance. :return: A Pelix instance """

        if cls.__singleton is None:
            # Normalize sys.path
            normalize_path()
            cls.__singleton = Framework(properties)

        return cls.__singleton