# Path: Lib/glyphsLib/builder/common.py
# def to_ufo_time(datetime_obj):
#     """Format a datetime object as specified for UFOs."""
#     return datetime_obj.strftime(UFO_FORMAT)
# 
# def from_ufo_time(string):
#     """Parses a datetime as specified for UFOs into a datetime object."""
#     return datetime.datetime.strptime(string, UFO_FORMAT)
# 
# Path: Lib/glyphsLib/builder/constants.py
# GLYPHS_PREFIX = "com.schriftgestaltung."
# 
# UFO2FT_FILTERS_KEY = "com.github.googlei18n.ufo2ft.filters"


import logging
from .common import to_ufo_time, from_ufo_time
from .constants import GLYPHS_PREFIX, UFO2FT_FILTERS_KEY
    if info.versionMinor is not None:
        font.versionMinor = info.versionMinor

    if info.copyright is not None:
        font.copyright = info.copyright
    if info.openTypeNameDesigner is not None:
        font.designer = info.openTypeNameDesigner
    if info.openTypeNameDesignerURL is not None:
        font.designerURL = info.openTypeNameDesignerURL
    if info.openTypeNameManufacturer is not None:
        font.manufacturer = info.openTypeNameManufacturer
    if info.openTypeNameManufacturerURL is not None:
        font.manufacturerURL = info.openTypeNameManufacturerURL

    self.to_glyphs_family_names(ufo)
    self.to_glyphs_family_user_data_from_ufo(ufo)
    self.to_glyphs_custom_params(ufo, font)


def _compare_and_merge_glyphs_font_attributes(self, source):
    ufo = source.font
    self.to_glyphs_family_names(ufo, merge=True)


def to_glyphs_ordered_masters(self):
    """Modify in-place the list of UFOs to restore their original order in
    the Glyphs file (if any, otherwise does not change the order)."""
    return sorted(self.designspace.sources, key=_original_master_order)



# Path: Lib/glyphsLib/builder/common.py
# def to_ufo_time(datetime_obj):
#     """Format a datetime object as specified for UFOs."""
#     return datetime_obj.strftime(UFO_FORMAT)
# 
# def from_ufo_time(string):
#     """Parses a datetime as specified for UFOs into a datetime object."""
#     return datetime.datetime.strptime(string, UFO_FORMAT)
# 
# Path: Lib/glyphsLib/builder/constants.py
# GLYPHS_PREFIX = "com.schriftgestaltung."
# 
# UFO2FT_FILTERS_KEY = "com.github.googlei18n.ufo2ft.filters"


# Path: Lib/glyphsLib/builder/font.py
import logging
from .common import to_ufo_time, from_ufo_time
from .constants import GLYPHS_PREFIX, UFO2FT_FILTERS_KEY

    if info.versionMinor is not None:
        font.versionMinor = info.versionMinor

    if info.copyright is not None:
        font.copyright = info.copyright
    if info.openTypeNameDesigner is not None:
        font.designer = info.openTypeNameDesigner
    if info.openTypeNameDesignerURL is not None:
        font.designerURL = info.openTypeNameDesignerURL
    if info.openTypeNameManufacturer is not None:
        font.manufacturer = info.openTypeNameManufacturer
    if info.openTypeNameManufacturerURL is not None:
        font.manufacturerURL = info.openTypeNameManufacturerURL

    self.to_glyphs_family_names(ufo)
    self.to_glyphs_family_user_data_from_ufo(ufo)
    self.to_glyphs_custom_params(ufo, font)


def _compare_and_merge_glyphs_font_attributes(self, source):
    ufo = source.font
    self.to_glyphs_family_names(ufo, merge=True)


def to_glyphs_ordered_masters(self):
    """Modify in-place the list of UFOs to restore their original order in
    the Glyphs file (if any, otherwise does not change the order)."""
    return sorted(self.designspace.sources, key=_original_master_order)



def _original_master_order(source):