def METHOD_NAME(cls, type, properties, version, base_class):
    prop_dict = _get_properties_dict(properties)
    class _CustomMarking(cls, base_class):
        _type = type
        _properties = prop_dict
        def __init__(self, **kwargs):
            base_class.__init__(self, **kwargs)
            _cls_init(cls, self, kwargs)
    _CustomMarking.__name__ = cls.__name__
    _register_marking(_CustomMarking, version=version)
    return _CustomMarking