from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals

from .base import (
    HasProperties,
    Instance,
    List,
    Union,
)
from .basic import (
    Bool,
    Color,
    Complex,
    DateTime,
    Float,
    GettableProperty,
    Integer,
    Property,
    String,
    StringChoice,
    Uuid,
)
from .math import (
    Array,
    Vector2,
    Vector2Array,
    Vector3,
    Vector3Array,
)
from .images import (
    ImagePNG
)
from .utils import defaults, filter_props, undefined
from .handlers import observer, validator
from . import task

__version__ = '0.2.3'
__author__ = '3point Science'
__license__ = 'MIT'
__copyright__ = 'Copyright 2016 3point Science,'

from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals

from .base import (
    HasProperties,
    Instance,
    List,
    Union,
)

from .basic import (
    Bool,
    Color,
    Complex,
    DateTime,
    Float,
    GettableProperty,
    Integer,
    Property,
    String,
    StringChoice,
    Uuid,
)

# Attempt to import image classes. Requires:
# >> pip install properties[image]
# or
# >> pip install properties[full]
try:
    from .images import (
        ImagePNG
    )
except ImportError:
    pass

# Attempt to import math/array classes. Requires:
# >> pip install properties[math]
# or
# >> pip install properties[full]
try:
    from .math import (
        Array,
        Vector2,
        Vector2Array,
        Vector3,
        Vector3Array,
    )
except ImportError:
    pass

from .utils import defaults, filter_props, undefined
from .handlers import observer, validator
from . import task

__version__ = '0.2.3'
__author__ = '3point Science'
__license__ = 'MIT'
__copyright__ = 'Copyright 2016 3point Science,'

Modify init to only import available modules
Modify init to only import available modules

  from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  
  from .base import (
      HasProperties,
      Instance,
      List,
      Union,
  )
+ 
  from .basic import (
      Bool,
      Color,
      Complex,
      DateTime,
      Float,
      GettableProperty,
      Integer,
      Property,
      String,
      StringChoice,
      Uuid,
  )
+ 
+ # Attempt to import image classes. Requires:
+ # >> pip install properties[image]
+ # or
+ # >> pip install properties[full]
+ try:
- from .math import (
-     Array,
-     Vector2,
-     Vector2Array,
-     Vector3,
-     Vector3Array,
- )
- from .images import (
+     from .images import (
-     ImagePNG
+         ImagePNG
- )
+     )
+ except ImportError:
+     pass
+ 
+ # Attempt to import math/array classes. Requires:
+ # >> pip install properties[math]
+ # or
+ # >> pip install properties[full]
+ try:
+     from .math import (
+         Array,
+         Vector2,
+         Vector2Array,
+         Vector3,
+         Vector3Array,
+     )
+ except ImportError:
+     pass
+ 
  from .utils import defaults, filter_props, undefined
  from .handlers import observer, validator
  from . import task
  
  __version__ = '0.2.3'
  __author__ = '3point Science'
  __license__ = 'MIT'
  __copyright__ = 'Copyright 2016 3point Science,'
  
Modify init to only import available modules
## Code Before:
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals

from .base import (
    HasProperties,
    Instance,
    List,
    Union,
)
from .basic import (
    Bool,
    Color,
    Complex,
    DateTime,
    Float,
    GettableProperty,
    Integer,
    Property,
    String,
    StringChoice,
    Uuid,
)
from .math import (
    Array,
    Vector2,
    Vector2Array,
    Vector3,
    Vector3Array,
)
from .images import (
    ImagePNG
)
from .utils import defaults, filter_props, undefined
from .handlers import observer, validator
from . import task

__version__ = '0.2.3'
__author__ = '3point Science'
__license__ = 'MIT'
__copyright__ = 'Copyright 2016 3point Science,'

## Instruction:
Modify init to only import available modules
## Code After:
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals

from .base import (
    HasProperties,
    Instance,
    List,
    Union,
)

from .basic import (
    Bool,
    Color,
    Complex,
    DateTime,
    Float,
    GettableProperty,
    Integer,
    Property,
    String,
    StringChoice,
    Uuid,
)

# Attempt to import image classes. Requires:
# >> pip install properties[image]
# or
# >> pip install properties[full]
try:
    from .images import (
        ImagePNG
    )
except ImportError:
    pass

# Attempt to import math/array classes. Requires:
# >> pip install properties[math]
# or
# >> pip install properties[full]
try:
    from .math import (
        Array,
        Vector2,
        Vector2Array,
        Vector3,
        Vector3Array,
    )
except ImportError:
    pass

from .utils import defaults, filter_props, undefined
from .handlers import observer, validator
from . import task

__version__ = '0.2.3'
__author__ = '3point Science'
__license__ = 'MIT'
__copyright__ = 'Copyright 2016 3point Science,'
