def __init__(self, *args, **kwargs):
if '<STR_LIT>' in kwargs:<EOL><INDENT>crs = kwargs['<STR_LIT>']<EOL>del(kwargs['<STR_LIT>'])<EOL><DEDENT>else:<EOL><INDENT>crs = None<EOL><DEDENT>if crs is None or (crs not in ACCEPTABLE_CRS):<EOL><INDENT>raise ValueError('<STR_LIT>'<EOL>'<STR_LIT>'.format(crs, '<STR_LIT:U+002C>'.join(ACCEPTABLE_CRS)))<EOL><DEDENT>if '<STR_LIT:default>' in kwargs:<EOL><INDENT>if not hasattr(kwargs['<STR_LIT:default>'], "<STR_LIT>"):<EOL><INDENT>if not isinstance(kwargs['<STR_LIT:default>'], NeomodelPoint):<EOL><INDENT>raise TypeError('<STR_LIT>'<EOL>'<STR_LIT>'.format(type(kwargs['<STR_LIT:default>'])))<EOL><DEDENT><DEDENT><DEDENT>super(PointProperty, self).__init__(*args, **kwargs)<EOL>self._crs = crs<EOL>
A Point property that requires at least its CRS to be known to offer proper validation.

:param crs: Coordinate Reference System
:type crs: str
:param kwargs: Dictionary of arguments
:type kwargs: dict