Index: build_tools/conda/altgraph/bld.bat
===================================================================
--- build_tools/conda/altgraph/bld.bat	(revision 50040a0542415ab26b5931c541a28a01bc9c26cb)
+++ build_tools/conda/altgraph/bld.bat	(revision 50040a0542415ab26b5931c541a28a01bc9c26cb)
@@ -0,0 +1,8 @@
+"%PYTHON%" setup.py install
+if errorlevel 1 exit 1
+
+:: Add more build steps here, if they are necessary.
+
+:: See
+:: http://docs.continuum.io/conda/build.html
+:: for a list of environment variables that are set during the build process.
Index: build_tools/conda/altgraph/build.sh
===================================================================
--- build_tools/conda/altgraph/build.sh	(revision 50040a0542415ab26b5931c541a28a01bc9c26cb)
+++ build_tools/conda/altgraph/build.sh	(revision 50040a0542415ab26b5931c541a28a01bc9c26cb)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+$PYTHON setup.py install
+
+# Add more build steps here, if they are necessary.
+
+# See
+# http://docs.continuum.io/conda/build.html
+# for a list of environment variables that are set during the build process.
Index: build_tools/conda/altgraph/meta.yaml
===================================================================
--- build_tools/conda/altgraph/meta.yaml	(revision 2b9f7c270caf0eaeea128dcf83c5b813be1f155e)
+++ build_tools/conda/altgraph/meta.yaml	(revision 2b9f7c270caf0eaeea128dcf83c5b813be1f155e)
@@ -0,0 +1,61 @@
+package:
+  name: altgraph
+  version: !!str 0.12
+
+source:
+  fn: altgraph-0.12.tar.gz
+  url: https://pypi.python.org/packages/source/a/altgraph/altgraph-0.12.tar.gz
+  md5: 916dca277fb2b747d5b1ec05b54a0825
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+# build:
+  #preserve_egg_dir: True
+  #entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - altgraph = altgraph:main
+    #
+    # Would create an entry point called altgraph that calls altgraph.main()
+
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
+requirements:
+  build:
+    - python
+    - setuptools
+
+  run:
+    - python
+    - setuptools
+
+test:
+  # Python imports
+  imports:
+    - altgraph
+
+  #commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://packages.python.org/altgraph
+  license:  MIT License
+  summary: 'Python graph (network) package'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/macholib/bld.bat
===================================================================
--- build_tools/conda/macholib/bld.bat	(revision 58f75b46aa66c5db0d3d47b649633255c41b9d56)
+++ build_tools/conda/macholib/bld.bat	(revision 58f75b46aa66c5db0d3d47b649633255c41b9d56)
@@ -0,0 +1,8 @@
+"%PYTHON%" setup.py install
+if errorlevel 1 exit 1
+
+:: Add more build steps here, if they are necessary.
+
+:: See
+:: http://docs.continuum.io/conda/build.html
+:: for a list of environment variables that are set during the build process.
Index: build_tools/conda/macholib/build.sh
===================================================================
--- build_tools/conda/macholib/build.sh	(revision 58f75b46aa66c5db0d3d47b649633255c41b9d56)
+++ build_tools/conda/macholib/build.sh	(revision 58f75b46aa66c5db0d3d47b649633255c41b9d56)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+$PYTHON setup.py install
+
+# Add more build steps here, if they are necessary.
+
+# See
+# http://docs.continuum.io/conda/build.html
+# for a list of environment variables that are set during the build process.
Index: build_tools/conda/macholib/meta.yaml
===================================================================
--- build_tools/conda/macholib/meta.yaml	(revision bd66f66d81661a8cceeeeb0399678c487787f995)
+++ build_tools/conda/macholib/meta.yaml	(revision bd66f66d81661a8cceeeeb0399678c487787f995)
@@ -0,0 +1,64 @@
+package:
+  name: macholib
+  version: !!str 1.7
+
+source:
+  fn: macholib-1.7.tar.gz
+  url: https://pypi.python.org/packages/source/m/macholib/macholib-1.7.tar.gz
+  md5: cf03a55323d5b7ca59be530ba0b01032
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+build:
+  #preserve_egg_dir: True
+  entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - macholib = macholib:main
+    #
+    # Would create an entry point called macholib that calls macholib.main()
+
+    - macho_find = macholib.macho_find:main
+    - macho_standalone = macholib.macho_standalone:main
+    - macho_dump = macholib.macho_dump:main
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
+requirements:
+  build:
+    - python
+    - setuptools
+    - altgraph >=0.12
+
+  run:
+    - python
+    - altgraph >=0.12
+
+test:
+  # Python imports
+  imports:
+    - macholib
+
+  commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://bitbucket.org/ronaldoussoren/macholib
+  license:  MIT License
+  summary: 'Mach-O header analysis and editing'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/modulegraph/bld.bat
===================================================================
--- build_tools/conda/modulegraph/bld.bat	(revision 951e4ae1bbbf9fff1449062aa9e4a16520aad517)
+++ build_tools/conda/modulegraph/bld.bat	(revision 951e4ae1bbbf9fff1449062aa9e4a16520aad517)
@@ -0,0 +1,8 @@
+"%PYTHON%" setup.py install
+if errorlevel 1 exit 1
+
+:: Add more build steps here, if they are necessary.
+
+:: See
+:: http://docs.continuum.io/conda/build.html
+:: for a list of environment variables that are set during the build process.
Index: build_tools/conda/modulegraph/build.sh
===================================================================
--- build_tools/conda/modulegraph/build.sh	(revision 951e4ae1bbbf9fff1449062aa9e4a16520aad517)
+++ build_tools/conda/modulegraph/build.sh	(revision 951e4ae1bbbf9fff1449062aa9e4a16520aad517)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+$PYTHON setup.py install
+
+# Add more build steps here, if they are necessary.
+
+# See
+# http://docs.continuum.io/conda/build.html
+# for a list of environment variables that are set during the build process.
Index: build_tools/conda/modulegraph/meta.yaml
===================================================================
--- build_tools/conda/modulegraph/meta.yaml	(revision 22475e63f2c9e0607b07dc8e5500ac04057d62c2)
+++ build_tools/conda/modulegraph/meta.yaml	(revision 22475e63f2c9e0607b07dc8e5500ac04057d62c2)
@@ -0,0 +1,62 @@
+package:
+  name: modulegraph
+  version: !!str 0.12
+
+source:
+  fn: modulegraph-0.12.tar.gz
+  url: https://pypi.python.org/packages/source/m/modulegraph/modulegraph-0.12.tar.gz
+  md5: 188bfb66058f7f446f04145d0ac63359
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+build:
+  #preserve_egg_dir: True
+  entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - modulegraph = modulegraph:main
+    #
+    # Would create an entry point called modulegraph that calls modulegraph.main()
+
+    - modulegraph = modulegraph.__main__:main
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
+requirements:
+  build:
+    - python
+    - setuptools
+    - altgraph >=0.12
+
+  run:
+    - python
+    - altgraph >=0.12
+
+test:
+  # Python imports
+  imports:
+    - modulegraph
+
+  commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://bitbucket.org/ronaldoussoren/modulegraph
+  license:  MIT License
+  summary: 'Python module dependency analysis tool'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/py2app/bld.bat
===================================================================
--- build_tools/conda/py2app/bld.bat	(revision 42b65f47eaf1f29b9210f0975a8fa5f1e9d48ff8)
+++ build_tools/conda/py2app/bld.bat	(revision 42b65f47eaf1f29b9210f0975a8fa5f1e9d48ff8)
@@ -0,0 +1,8 @@
+"%PYTHON%" setup.py install
+if errorlevel 1 exit 1
+
+:: Add more build steps here, if they are necessary.
+
+:: See
+:: http://docs.continuum.io/conda/build.html
+:: for a list of environment variables that are set during the build process.
Index: build_tools/conda/py2app/build.sh
===================================================================
--- build_tools/conda/py2app/build.sh	(revision 42b65f47eaf1f29b9210f0975a8fa5f1e9d48ff8)
+++ build_tools/conda/py2app/build.sh	(revision 42b65f47eaf1f29b9210f0975a8fa5f1e9d48ff8)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+$PYTHON setup.py install
+
+# Add more build steps here, if they are necessary.
+
+# See
+# http://docs.continuum.io/conda/build.html
+# for a list of environment variables that are set during the build process.
Index: build_tools/conda/py2app/meta.yaml
===================================================================
--- build_tools/conda/py2app/meta.yaml	(revision 42b65f47eaf1f29b9210f0975a8fa5f1e9d48ff8)
+++ build_tools/conda/py2app/meta.yaml	(revision 42b65f47eaf1f29b9210f0975a8fa5f1e9d48ff8)
@@ -0,0 +1,74 @@
+package:
+  name: py2app
+  version: !!str 0.9
+
+source:
+  fn: py2app-0.9.tar.gz
+  url: https://pypi.python.org/packages/source/p/py2app/py2app-0.9.tar.gz
+  md5: eb31f5fefcf80aeaf4d02ec68d5978b4
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+build:
+  #preserve_egg_dir: True
+  entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - py2app = py2app:main
+    #
+    # Would create an entry point called py2app that calls py2app.main()
+
+    - py2applet = py2app.script_py2applet:main
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
+requirements:
+  build:
+    - python
+    - setuptools
+    - altgraph >=0.12
+    - modulegraph >=0.12
+    - macholib >=1.5
+
+  run:
+    - python
+    - altgraph >=0.12
+    - modulegraph >=0.12
+    - macholib >=1.5
+
+test:
+  # Python imports
+  imports:
+    - py2app
+    - py2app.apptemplate
+    - py2app.bootstrap
+    - py2app.bundletemplate
+    - py2app.converters
+    - py2app.recipes
+    - py2app.recipes.PIL
+
+  commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+    - py2applet --help
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://bitbucket.org/ronaldoussoren/py2app
+  license:  MIT License
+  summary: 'Create standalone Mac OS X applications with Python'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: sasview/setup_exe.py
===================================================================
--- sasview/setup_exe.py	(revision b9fc6745cc04a20a5022ab77ad4370eff5010021)
+++ sasview/setup_exe.py	(revision 42811b87f33071f94f5cd40076f157fe944e2b43)
@@ -333,5 +333,5 @@
     ])
 #packages.append('IPython')
-includes = ['site']
+includes = ['site','lxml._elementpath', 'lxml.etree']
 
 # Exclude packages that are not needed but are often found on build systems
Index: src/sas/fit/ScipyFitting.py
===================================================================
--- src/sas/fit/ScipyFitting.py	(revision fd5ac0db8089df5bd882587f157d4bf317cfcf67)
+++ src/sas/fit/ScipyFitting.py	(revision a10364b52df3f74f54be6b644163d5d92b3a675b)
@@ -115,5 +115,5 @@
             low,high = model.details[p][1:3]
             if low is not None and numpy.isfinite(low):
-                if p.value == 0:
+                if value == 0:
                     # This value works on Scipy
                     # Do not change numbers below
Index: src/sas/guiframe/documentation_window.py
===================================================================
--- src/sas/guiframe/documentation_window.py	(revision 69032d4b8f5a5bafb210b1c21a808dad4756532d)
+++ src/sas/guiframe/documentation_window.py	(revision 9afc54306e882de117df3eb703ded3c74fc492d9)
@@ -9,6 +9,8 @@
 else:
     import wx.html as html
+from gui_manager import get_app_dir
 
-   
+PATH_APP = get_app_dir() 
+
 class DocumentationWindow(Frame):
     def __init__(self, parent, id, path, title, size=(850, 540)):
@@ -19,8 +21,10 @@
             docs_path = os.path.join(os.environ[SPHINX_DOC_ENV])
         else:
-            docs_path = os.path.join(PATH_APP, "..", "..", "doc")
+            # For the installer, docs are in a top-level directory.  We're not
+            # bothering to worry about docs when running using the old
+            # (non - run.py) way.
+            docs_path = os.path.join(PATH_APP, "doc")
 
-        if (not os.path.exists(docs_path)):
-            print "logging"
+        if not os.path.exists(docs_path):
             logging.error("Could not find Sphinx documentation at %s \
             -- has it been built?", docs_path)
Index: src/sas/perspectives/fitting/models.py
===================================================================
--- src/sas/perspectives/fitting/models.py	(revision b9a5f0eb8e8cbff8f8d934bbfa4ea18168141e13)
+++ src/sas/perspectives/fitting/models.py	(revision 6f82ba1b683b11bceac4d67527c66113ea176632)
@@ -310,418 +310,701 @@
 
         # regular model names only
-        self.model_name_list = []
-        from sas.models.SphereModel import SphereModel
-        self.model_dictionary[SphereModel.__name__] = SphereModel
-#        self.shape_list.append(SphereModel)
-        self.multiplication_factor.append(SphereModel)
-        self.model_name_list.append(SphereModel.__name__)
-        
-        from sas.models.BinaryHSModel import BinaryHSModel
-        self.model_dictionary[BinaryHSModel.__name__] = BinaryHSModel
-#        self.shape_list.append(BinaryHSModel)
-        self.model_name_list.append(BinaryHSModel.__name__)
-                        
-        from sas.models.FuzzySphereModel import FuzzySphereModel
-        self.model_dictionary[FuzzySphereModel.__name__] = FuzzySphereModel
-#        self.shape_list.append(FuzzySphereModel)
-        self.multiplication_factor.append(FuzzySphereModel)
-        self.model_name_list.append(FuzzySphereModel.__name__)
-                        
-        from sas.models.RaspBerryModel import RaspBerryModel
-        self.model_dictionary[RaspBerryModel.__name__] = RaspBerryModel
-#        self.shape_list.append(RaspBerryModel)
-        self.model_name_list.append(RaspBerryModel.__name__)
-                
-        from sas.models.CoreShellModel import CoreShellModel
-        self.model_dictionary[CoreShellModel.__name__] = CoreShellModel
-#        self.shape_list.append(CoreShellModel)
-        self.multiplication_factor.append(CoreShellModel)
-        self.model_name_list.append(CoreShellModel.__name__)
-        
-        from sas.models.Core2ndMomentModel import Core2ndMomentModel
-        self.model_dictionary[Core2ndMomentModel.__name__] = Core2ndMomentModel
-#        self.shape_list.append(Core2ndMomentModel)
-        self.model_name_list.append(Core2ndMomentModel.__name__)
-        
-        from sas.models.CoreMultiShellModel import CoreMultiShellModel
-        self.model_dictionary[CoreMultiShellModel.__name__] = CoreMultiShellModel
-#        self.shape_list.append(CoreMultiShellModel)
-        self.multiplication_factor.append(CoreMultiShellModel)
-        self.multi_func_list.append(CoreMultiShellModel)
-
-        from sas.models.VesicleModel import VesicleModel
-        self.model_dictionary[VesicleModel.__name__] = VesicleModel
-#        self.shape_list.append(VesicleModel)
-        self.multiplication_factor.append(VesicleModel)
-        self.model_name_list.append(VesicleModel.__name__)
-        
-        from sas.models.MultiShellModel import MultiShellModel
-        self.model_dictionary[MultiShellModel.__name__] = MultiShellModel
-#        self.shape_list.append(MultiShellModel)
-        self.multiplication_factor.append(MultiShellModel)
-        self.model_name_list.append(MultiShellModel.__name__)
-        
-        from sas.models.OnionExpShellModel import OnionExpShellModel
-        self.model_dictionary[OnionExpShellModel.__name__] = OnionExpShellModel
-#        self.shape_list.append(OnionExpShellModel)
-        self.multiplication_factor.append(OnionExpShellModel)
-        self.multi_func_list.append(OnionExpShellModel)
-                         
-        from sas.models.SphericalSLDModel import SphericalSLDModel
-        self.model_dictionary[SphericalSLDModel.__name__] = SphericalSLDModel
-#        self.shape_list.append(SphericalSLDModel)
-        self.multiplication_factor.append(SphericalSLDModel)
-        self.multi_func_list.append(SphericalSLDModel)
-
-        
-        from sas.models.LinearPearlsModel import LinearPearlsModel
-        self.model_dictionary[LinearPearlsModel.__name__] = LinearPearlsModel
-#        self.shape_list.append(LinearPearlsModel)
-        self.model_name_list.append(LinearPearlsModel.__name__)
-          
-        from sas.models.PearlNecklaceModel import PearlNecklaceModel
-        self.model_dictionary[PearlNecklaceModel.__name__] = PearlNecklaceModel
-#        self.shape_list.append(PearlNecklaceModel)
-        self.model_name_list.append(PearlNecklaceModel.__name__)
-        #self.multiplication_factor.append(PearlNecklaceModel)
-        
-        from sas.models.CylinderModel import CylinderModel
-        self.model_dictionary[CylinderModel.__name__] = CylinderModel
-#        self.shape_list.append(CylinderModel)
-        self.multiplication_factor.append(CylinderModel)
-        self.model_name_list.append(CylinderModel.__name__)
-        
-        from sas.models.CoreShellCylinderModel import CoreShellCylinderModel
-        self.model_dictionary[CoreShellCylinderModel.__name__] = CoreShellCylinderModel
-#        self.shape_list.append(CoreShellCylinderModel)
-        self.multiplication_factor.append(CoreShellCylinderModel)
-        self.model_name_list.append(CoreShellCylinderModel.__name__)
-        
-        from sas.models.CoreShellBicelleModel import CoreShellBicelleModel
-        self.model_dictionary[CoreShellBicelleModel.__name__] = CoreShellBicelleModel
-#        self.shape_list.append(CoreShellBicelleModel)
-        self.multiplication_factor.append(CoreShellBicelleModel)
-        self.model_name_list.append(CoreShellBicelleModel.__name__)
-                
-        from sas.models.HollowCylinderModel import HollowCylinderModel
-        self.model_dictionary[HollowCylinderModel.__name__] = HollowCylinderModel
-#        self.shape_list.append(HollowCylinderModel)
-        self.multiplication_factor.append(HollowCylinderModel)
-        self.model_name_list.append(HollowCylinderModel.__name__)
-              
-        from sas.models.FlexibleCylinderModel import FlexibleCylinderModel
-        self.model_dictionary[FlexibleCylinderModel.__name__] = FlexibleCylinderModel
-#        self.shape_list.append(FlexibleCylinderModel)
-        self.model_name_list.append(FlexibleCylinderModel.__name__)
-
-        from sas.models.FlexCylEllipXModel import FlexCylEllipXModel
-        self.model_dictionary[FlexCylEllipXModel.__name__] = FlexCylEllipXModel
-#        self.shape_list.append(FlexCylEllipXModel)
-        self.model_name_list.append(FlexCylEllipXModel.__name__)
-        
-        from sas.models.StackedDisksModel import StackedDisksModel
-        self.model_dictionary[StackedDisksModel.__name__] = StackedDisksModel
-#        self.shape_list.append(StackedDisksModel)
-        self.multiplication_factor.append(StackedDisksModel)
-        self.model_name_list.append(StackedDisksModel.__name__)
-        
-        from sas.models.ParallelepipedModel import ParallelepipedModel
-        self.model_dictionary[ParallelepipedModel.__name__] = ParallelepipedModel
-#        self.shape_list.append(ParallelepipedModel)
-        self.multiplication_factor.append(ParallelepipedModel)
-        self.model_name_list.append(ParallelepipedModel.__name__)
-        
-        from sas.models.CSParallelepipedModel import CSParallelepipedModel
-        self.model_dictionary[CSParallelepipedModel.__name__] = CSParallelepipedModel
-#        self.shape_list.append(CSParallelepipedModel)
-        self.multiplication_factor.append(CSParallelepipedModel)
-        self.model_name_list.append(CSParallelepipedModel.__name__)
-        
-        from sas.models.EllipticalCylinderModel import EllipticalCylinderModel
-        self.model_dictionary[EllipticalCylinderModel.__name__] = EllipticalCylinderModel
-#        self.shape_list.append(EllipticalCylinderModel)
-        self.multiplication_factor.append(EllipticalCylinderModel)
-        self.model_name_list.append(EllipticalCylinderModel.__name__)
-        
-        from sas.models.BarBellModel import BarBellModel
-        self.model_dictionary[BarBellModel.__name__] = BarBellModel
-#        self.shape_list.append(BarBellModel)
-        self.model_name_list.append(BarBellModel.__name__)
-        # not implemeted yet!
-        #self.multiplication_factor.append(BarBellModel)
-        
-        from sas.models.CappedCylinderModel import CappedCylinderModel
-        self.model_dictionary[CappedCylinderModel.__name__] = CappedCylinderModel
- #       self.shape_list.append(CappedCylinderModel)
-        self.model_name_list.append(CappedCylinderModel.__name__)
-        # not implemeted yet!
-        #self.multiplication_factor.append(CappedCylinderModel)
-        
-        from sas.models.EllipsoidModel import EllipsoidModel
-        self.model_dictionary[EllipsoidModel.__name__] = EllipsoidModel
-#        self.shape_list.append(EllipsoidModel)
-        self.multiplication_factor.append(EllipsoidModel)
-        self.model_name_list.append(EllipsoidModel.__name__)
-      
-        from sas.models.CoreShellEllipsoidModel import CoreShellEllipsoidModel
-        self.model_dictionary[CoreShellEllipsoidModel.__name__] = CoreShellEllipsoidModel
-#        self.shape_list.append(CoreShellEllipsoidModel)
-        self.multiplication_factor.append(CoreShellEllipsoidModel)
-        self.model_name_list.append(CoreShellEllipsoidModel.__name__)
-
-        from sas.models.CoreShellEllipsoidXTModel import CoreShellEllipsoidXTModel
-        self.model_dictionary[CoreShellEllipsoidXTModel.__name__] = CoreShellEllipsoidXTModel
-#        self.shape_list.append(CoreShellEllipsoidXTModel)
-        self.multiplication_factor.append(CoreShellEllipsoidXTModel)
-        self.model_name_list.append(CoreShellEllipsoidXTModel.__name__)
-         
-        from sas.models.TriaxialEllipsoidModel import TriaxialEllipsoidModel
-        self.model_dictionary[TriaxialEllipsoidModel.__name__] = TriaxialEllipsoidModel
-#        self.shape_list.append(TriaxialEllipsoidModel)
-        self.multiplication_factor.append(TriaxialEllipsoidModel)
-        self.model_name_list.append(TriaxialEllipsoidModel.__name__)
-        
-        from sas.models.LamellarModel import LamellarModel
-        self.model_dictionary[LamellarModel.__name__] = LamellarModel
-#        self.shape_list.append(LamellarModel)
-        self.model_name_list.append(LamellarModel.__name__)
-        
-        from sas.models.LamellarFFHGModel import LamellarFFHGModel
-        self.model_dictionary[LamellarFFHGModel.__name__] = LamellarFFHGModel
-#        self.shape_list.append(LamellarFFHGModel)
-        self.model_name_list.append(LamellarFFHGModel.__name__)
-        
-        from sas.models.LamellarPSModel import LamellarPSModel
-        self.model_dictionary[LamellarPSModel.__name__] = LamellarPSModel
-#        self.shape_list.append(LamellarPSModel)
-        self.model_name_list.append(LamellarPSModel.__name__)
-     
-        from sas.models.LamellarPSHGModel import LamellarPSHGModel
-        self.model_dictionary[LamellarPSHGModel.__name__] = LamellarPSHGModel
-#        self.shape_list.append(LamellarPSHGModel)
-        self.model_name_list.append(LamellarPSHGModel.__name__)
-        
-        from sas.models.LamellarPCrystalModel import LamellarPCrystalModel
-        self.model_dictionary[LamellarPCrystalModel.__name__] = LamellarPCrystalModel
-#        self.shape_list.append(LamellarPCrystalModel)
-        self.model_name_list.append(LamellarPCrystalModel.__name__)
-        
-        from sas.models.SCCrystalModel import SCCrystalModel
-        self.model_dictionary[SCCrystalModel.__name__] = SCCrystalModel
-#        self.shape_list.append(SCCrystalModel)
-        self.model_name_list.append(SCCrystalModel.__name__)
-        
-        from sas.models.FCCrystalModel import FCCrystalModel
-        self.model_dictionary[FCCrystalModel.__name__] = FCCrystalModel
-#        self.shape_list.append(FCCrystalModel)
-        self.model_name_list.append(FCCrystalModel.__name__)
-        
-        from sas.models.BCCrystalModel import BCCrystalModel
-        self.model_dictionary[BCCrystalModel.__name__] = BCCrystalModel
-#        self.shape_list.append(BCCrystalModel)
-        self.model_name_list.append(BCCrystalModel.__name__)
-      
+        try:
+            self.model_name_list = []
+            from sas.models.SphereModel import SphereModel
+            self.model_dictionary[SphereModel.__name__] = SphereModel
+            #        self.shape_list.append(SphereModel)
+            self.multiplication_factor.append(SphereModel)
+            self.model_name_list.append(SphereModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.BinaryHSModel import BinaryHSModel
+            self.model_dictionary[BinaryHSModel.__name__] = BinaryHSModel
+            #        self.shape_list.append(BinaryHSModel)
+            self.model_name_list.append(BinaryHSModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.FuzzySphereModel import FuzzySphereModel
+            self.model_dictionary[FuzzySphereModel.__name__] = FuzzySphereModel
+            #        self.shape_list.append(FuzzySphereModel)
+            self.multiplication_factor.append(FuzzySphereModel)
+            self.model_name_list.append(FuzzySphereModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.RaspBerryModel import RaspBerryModel
+            self.model_dictionary[RaspBerryModel.__name__] = RaspBerryModel
+            #        self.shape_list.append(RaspBerryModel)
+            self.model_name_list.append(RaspBerryModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CoreShellModel import CoreShellModel
+
+            self.model_dictionary[CoreShellModel.__name__] = CoreShellModel
+            #        self.shape_list.append(CoreShellModel)
+            self.multiplication_factor.append(CoreShellModel)
+            self.model_name_list.append(CoreShellModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.Core2ndMomentModel import Core2ndMomentModel
+            self.model_dictionary[Core2ndMomentModel.__name__] = Core2ndMomentModel
+            #        self.shape_list.append(Core2ndMomentModel)
+            self.model_name_list.append(Core2ndMomentModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CoreMultiShellModel import CoreMultiShellModel
+            self.model_dictionary[CoreMultiShellModel.__name__] = CoreMultiShellModel
+            #        self.shape_list.append(CoreMultiShellModel)
+            self.multiplication_factor.append(CoreMultiShellModel)
+            self.multi_func_list.append(CoreMultiShellModel)
+        except:
+            pass
+
+        try:
+            from sas.models.VesicleModel import VesicleModel
+            self.model_dictionary[VesicleModel.__name__] = VesicleModel
+            #        self.shape_list.append(VesicleModel)
+            self.multiplication_factor.append(VesicleModel)
+            self.model_name_list.append(VesicleModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.MultiShellModel import MultiShellModel
+            self.model_dictionary[MultiShellModel.__name__] = MultiShellModel
+            #        self.shape_list.append(MultiShellModel)
+            self.multiplication_factor.append(MultiShellModel)
+            self.model_name_list.append(MultiShellModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.OnionExpShellModel import OnionExpShellModel
+            self.model_dictionary[OnionExpShellModel.__name__] = OnionExpShellModel
+            #        self.shape_list.append(OnionExpShellModel)
+            self.multiplication_factor.append(OnionExpShellModel)
+            self.multi_func_list.append(OnionExpShellModel)
+        except:
+            pass
+
+        try:
+            from sas.models.SphericalSLDModel import SphericalSLDModel
+
+            self.model_dictionary[SphericalSLDModel.__name__] = SphericalSLDModel
+            #        self.shape_list.append(SphericalSLDModel)
+            self.multiplication_factor.append(SphericalSLDModel)
+            self.multi_func_list.append(SphericalSLDModel)
+        except:
+            pass
+
+        try:
+            from sas.models.LinearPearlsModel import LinearPearlsModel
+
+            self.model_dictionary[LinearPearlsModel.__name__] = LinearPearlsModel
+            #        self.shape_list.append(LinearPearlsModel)
+            self.model_name_list.append(LinearPearlsModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.PearlNecklaceModel import PearlNecklaceModel
+
+            self.model_dictionary[PearlNecklaceModel.__name__] = PearlNecklaceModel
+            #        self.shape_list.append(PearlNecklaceModel)
+            self.model_name_list.append(PearlNecklaceModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CylinderModel import CylinderModel
+
+            self.model_dictionary[CylinderModel.__name__] = CylinderModel
+            #        self.shape_list.append(CylinderModel)
+            self.multiplication_factor.append(CylinderModel)
+            self.model_name_list.append(CylinderModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CoreShellCylinderModel import CoreShellCylinderModel
+
+            self.model_dictionary[CoreShellCylinderModel.__name__] = CoreShellCylinderModel
+            #        self.shape_list.append(CoreShellCylinderModel)
+            self.multiplication_factor.append(CoreShellCylinderModel)
+            self.model_name_list.append(CoreShellCylinderModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CoreShellBicelleModel import CoreShellBicelleModel
+
+            self.model_dictionary[CoreShellBicelleModel.__name__] = CoreShellBicelleModel
+            #        self.shape_list.append(CoreShellBicelleModel)
+            self.multiplication_factor.append(CoreShellBicelleModel)
+            self.model_name_list.append(CoreShellBicelleModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.HollowCylinderModel import HollowCylinderModel
+
+            self.model_dictionary[HollowCylinderModel.__name__] = HollowCylinderModel
+            #        self.shape_list.append(HollowCylinderModel)
+            self.multiplication_factor.append(HollowCylinderModel)
+            self.model_name_list.append(HollowCylinderModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.FlexibleCylinderModel import FlexibleCylinderModel
+
+            self.model_dictionary[FlexibleCylinderModel.__name__] = FlexibleCylinderModel
+            #        self.shape_list.append(FlexibleCylinderModel)
+            self.model_name_list.append(FlexibleCylinderModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.FlexCylEllipXModel import FlexCylEllipXModel
+
+            self.model_dictionary[FlexCylEllipXModel.__name__] = FlexCylEllipXModel
+            #        self.shape_list.append(FlexCylEllipXModel)
+            self.model_name_list.append(FlexCylEllipXModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.StackedDisksModel import StackedDisksModel
+
+            self.model_dictionary[StackedDisksModel.__name__] = StackedDisksModel
+            #        self.shape_list.append(StackedDisksModel)
+            self.multiplication_factor.append(StackedDisksModel)
+            self.model_name_list.append(StackedDisksModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.ParallelepipedModel import ParallelepipedModel
+
+            self.model_dictionary[ParallelepipedModel.__name__] = ParallelepipedModel
+            #        self.shape_list.append(ParallelepipedModel)
+            self.multiplication_factor.append(ParallelepipedModel)
+            self.model_name_list.append(ParallelepipedModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CSParallelepipedModel import CSParallelepipedModel
+
+            self.model_dictionary[CSParallelepipedModel.__name__] = CSParallelepipedModel
+            #        self.shape_list.append(CSParallelepipedModel)
+            self.multiplication_factor.append(CSParallelepipedModel)
+            self.model_name_list.append(CSParallelepipedModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.EllipticalCylinderModel import EllipticalCylinderModel
+
+            self.model_dictionary[EllipticalCylinderModel.__name__] = EllipticalCylinderModel
+            #        self.shape_list.append(EllipticalCylinderModel)
+            self.multiplication_factor.append(EllipticalCylinderModel)
+            self.model_name_list.append(EllipticalCylinderModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CappedCylinderModel import CappedCylinderModel
+
+            self.model_dictionary[CappedCylinderModel.__name__] = CappedCylinderModel
+            #       self.shape_list.append(CappedCylinderModel)
+            self.model_name_list.append(CappedCylinderModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.EllipsoidModel import EllipsoidModel
+
+            self.model_dictionary[EllipsoidModel.__name__] = EllipsoidModel
+            #        self.shape_list.append(EllipsoidModel)
+            self.multiplication_factor.append(EllipsoidModel)
+            self.model_name_list.append(EllipsoidModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CoreShellEllipsoidModel import CoreShellEllipsoidModel
+
+            self.model_dictionary[CoreShellEllipsoidModel.__name__] = CoreShellEllipsoidModel
+            #        self.shape_list.append(CoreShellEllipsoidModel)
+            self.multiplication_factor.append(CoreShellEllipsoidModel)
+            self.model_name_list.append(CoreShellEllipsoidModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CoreShellEllipsoidXTModel import CoreShellEllipsoidXTModel
+
+            self.model_dictionary[CoreShellEllipsoidXTModel.__name__] = CoreShellEllipsoidXTModel
+            #        self.shape_list.append(CoreShellEllipsoidXTModel)
+            self.multiplication_factor.append(CoreShellEllipsoidXTModel)
+            self.model_name_list.append(CoreShellEllipsoidXTModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.TriaxialEllipsoidModel import TriaxialEllipsoidModel
+
+            self.model_dictionary[TriaxialEllipsoidModel.__name__] = TriaxialEllipsoidModel
+            #        self.shape_list.append(TriaxialEllipsoidModel)
+            self.multiplication_factor.append(TriaxialEllipsoidModel)
+            self.model_name_list.append(TriaxialEllipsoidModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.LamellarModel import LamellarModel
+
+            self.model_dictionary[LamellarModel.__name__] = LamellarModel
+            #        self.shape_list.append(LamellarModel)
+            self.model_name_list.append(LamellarModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.LamellarFFHGModel import LamellarFFHGModel
+
+            self.model_dictionary[LamellarFFHGModel.__name__] = LamellarFFHGModel
+            #        self.shape_list.append(LamellarFFHGModel)
+            self.model_name_list.append(LamellarFFHGModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.LamellarPSModel import LamellarPSModel
+
+            self.model_dictionary[LamellarPSModel.__name__] = LamellarPSModel
+            #        self.shape_list.append(LamellarPSModel)
+            self.model_name_list.append(LamellarPSModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.LamellarPSHGModel import LamellarPSHGModel
+
+            self.model_dictionary[LamellarPSHGModel.__name__] = LamellarPSHGModel
+            #        self.shape_list.append(LamellarPSHGModel)
+            self.model_name_list.append(LamellarPSHGModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.LamellarPCrystalModel import LamellarPCrystalModel
+
+            self.model_dictionary[LamellarPCrystalModel.__name__] = LamellarPCrystalModel
+            #        self.shape_list.append(LamellarPCrystalModel)
+            self.model_name_list.append(LamellarPCrystalModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.SCCrystalModel import SCCrystalModel
+
+            self.model_dictionary[SCCrystalModel.__name__] = SCCrystalModel
+            #        self.shape_list.append(SCCrystalModel)
+            self.model_name_list.append(SCCrystalModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.FCCrystalModel import FCCrystalModel
+
+            self.model_dictionary[FCCrystalModel.__name__] = FCCrystalModel
+            #        self.shape_list.append(FCCrystalModel)
+            self.model_name_list.append(FCCrystalModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.BCCrystalModel import BCCrystalModel
+
+            self.model_dictionary[BCCrystalModel.__name__] = BCCrystalModel
+            #        self.shape_list.append(BCCrystalModel)
+            self.model_name_list.append(BCCrystalModel.__name__)
+        except:
+            pass
+
+
         ## Structure factor
-        from sas.models.SquareWellStructure import SquareWellStructure
-        self.model_dictionary[SquareWellStructure.__name__] = SquareWellStructure
-        self.struct_list.append(SquareWellStructure)
-        self.model_name_list.append(SquareWellStructure.__name__)
-        
-        from sas.models.HardsphereStructure import HardsphereStructure
-        self.model_dictionary[HardsphereStructure.__name__] = HardsphereStructure
-        self.struct_list.append(HardsphereStructure)
-        self.model_name_list.append(HardsphereStructure.__name__)
-         
-        from sas.models.StickyHSStructure import StickyHSStructure
-        self.model_dictionary[StickyHSStructure.__name__] = StickyHSStructure
-        self.struct_list.append(StickyHSStructure)
-        self.model_name_list.append(StickyHSStructure.__name__)
-        
-        from sas.models.HayterMSAStructure import HayterMSAStructure
-        self.model_dictionary[HayterMSAStructure.__name__] = HayterMSAStructure
-        self.struct_list.append(HayterMSAStructure)
-        self.model_name_list.append(HayterMSAStructure.__name__)
+        try:
+            from sas.models.SquareWellStructure import SquareWellStructure
+
+            self.model_dictionary[SquareWellStructure.__name__] = SquareWellStructure
+            self.struct_list.append(SquareWellStructure)
+            self.model_name_list.append(SquareWellStructure.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.HardsphereStructure import HardsphereStructure
+
+            self.model_dictionary[HardsphereStructure.__name__] = HardsphereStructure
+            self.struct_list.append(HardsphereStructure)
+            self.model_name_list.append(HardsphereStructure.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.StickyHSStructure import StickyHSStructure
+
+            self.model_dictionary[StickyHSStructure.__name__] = StickyHSStructure
+            self.struct_list.append(StickyHSStructure)
+            self.model_name_list.append(StickyHSStructure.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.HayterMSAStructure import HayterMSAStructure
+
+            self.model_dictionary[HayterMSAStructure.__name__] = HayterMSAStructure
+            self.struct_list.append(HayterMSAStructure)
+            self.model_name_list.append(HayterMSAStructure.__name__)
+        except:
+            pass
+
 
 
         ##shape-independent models
-        from sas.models.PowerLawAbsModel import PowerLawAbsModel
-        self.model_dictionary[PowerLawAbsModel.__name__] = PowerLawAbsModel
-#        self.shape_indep_list.append(PowerLawAbsModel)
-        self.model_name_list.append(PowerLawAbsModel.__name__)
-        
-        from sas.models.BEPolyelectrolyte import BEPolyelectrolyte
-        self.model_dictionary[BEPolyelectrolyte.__name__] = BEPolyelectrolyte
-#        self.shape_indep_list.append(BEPolyelectrolyte)
-        self.model_name_list.append(BEPolyelectrolyte.__name__)
-        self.form_factor_dict[str(wx.NewId())] =  [SphereModel]
-        
-        from sas.models.BroadPeakModel import BroadPeakModel
-        self.model_dictionary[BroadPeakModel.__name__] = BroadPeakModel
-#        self.shape_indep_list.append(BroadPeakModel)
-        self.model_name_list.append(BroadPeakModel.__name__)
-        
-        from sas.models.CorrLengthModel import CorrLengthModel
-        self.model_dictionary[CorrLengthModel.__name__] = CorrLengthModel
-#        self.shape_indep_list.append(CorrLengthModel)
-        self.model_name_list.append(CorrLengthModel.__name__)
-        
-        from sas.models.DABModel import DABModel
-        self.model_dictionary[DABModel.__name__] = DABModel
-#        self.shape_indep_list.append(DABModel)
-        self.model_name_list.append(DABModel.__name__)
-        
-        from sas.models.DebyeModel import DebyeModel
-        self.model_dictionary[DebyeModel.__name__] = DebyeModel
-#        self.shape_indep_list.append(DebyeModel)
-        self.model_name_list.append(DebyeModel.__name__)
-        
-        from sas.models.FractalModel import FractalModel
-        self.model_dictionary[FractalModel.__name__] = FractalModel
-#        self.shape_indep_list.append(FractalModel)
-        self.model_name_list.append(FractalModel.__name__)
-        
-        from sas.models.FractalCoreShellModel import FractalCoreShellModel
-        self.model_dictionary[FractalCoreShellModel.__name__] = FractalCoreShellModel
-#        self.shape_indep_list.append(FractalCoreShellModel)
-        self.model_name_list.append(FractalCoreShellModel.__name__)
-        
-        from sas.models.GaussLorentzGelModel import GaussLorentzGelModel
-        self.model_dictionary[GaussLorentzGelModel.__name__] = GaussLorentzGelModel
-#        self.shape_indep_list.append(GaussLorentzGelModel)
-        self.model_name_list.append(GaussLorentzGelModel.__name__)
-                
-        from sas.models.GuinierModel import GuinierModel
-        self.model_dictionary[GuinierModel.__name__] = GuinierModel
-#        self.shape_indep_list.append(GuinierModel)
-        self.model_name_list.append(GuinierModel.__name__)
-        
-        from sas.models.GuinierPorodModel import GuinierPorodModel
-        self.model_dictionary[GuinierPorodModel.__name__] = GuinierPorodModel
-#        self.shape_indep_list.append(GuinierPorodModel)
-        self.model_name_list.append(GuinierPorodModel.__name__)
-
-        from sas.models.LorentzModel import LorentzModel
-        self.model_dictionary[LorentzModel.__name__] = LorentzModel
-#        self.shape_indep_list.append(LorentzModel)
-        self.model_name_list.append(LorentzModel.__name__)
-
-        from sas.models.MassFractalModel import MassFractalModel
-        self.model_dictionary[MassFractalModel.__name__] = MassFractalModel
-#        self.shape_indep_list.append(MassFractalModel)
-        self.model_name_list.append(MassFractalModel.__name__)
-        
-        from sas.models.MassSurfaceFractal import MassSurfaceFractal
-        self.model_dictionary[MassSurfaceFractal.__name__] = MassSurfaceFractal
-#        self.shape_indep_list.append(MassSurfaceFractal)
-        self.model_name_list.append(MassSurfaceFractal.__name__)
-        
-        from sas.models.PeakGaussModel import PeakGaussModel
-        self.model_dictionary[PeakGaussModel.__name__] = PeakGaussModel
-#        self.shape_indep_list.append(PeakGaussModel)
-        self.model_name_list.append(PeakGaussModel.__name__)
-        
-        from sas.models.PeakLorentzModel import PeakLorentzModel
-        self.model_dictionary[PeakLorentzModel.__name__] = PeakLorentzModel
-#        self.shape_indep_list.append(PeakLorentzModel)
-        self.model_name_list.append(PeakLorentzModel.__name__)
-        
-        from sas.models.Poly_GaussCoil import Poly_GaussCoil
-        self.model_dictionary[Poly_GaussCoil.__name__] = Poly_GaussCoil
-#        self.shape_indep_list.append(Poly_GaussCoil)
-        self.model_name_list.append(Poly_GaussCoil.__name__)
-        
-        from sas.models.PolymerExclVolume import PolymerExclVolume
-        self.model_dictionary[PolymerExclVolume.__name__] = PolymerExclVolume
-#        self.shape_indep_list.append(PolymerExclVolume)
-        self.model_name_list.append(PolymerExclVolume.__name__)
-        
-        from sas.models.PorodModel import PorodModel
-        self.model_dictionary[PorodModel.__name__] = PorodModel
-#        self.shape_indep_list.append(PorodModel)
-        self.model_name_list.append(PorodModel.__name__)
-        
-        from sas.models.RPA10Model import RPA10Model
-        self.model_dictionary[RPA10Model.__name__] = RPA10Model
-#        self.shape_indep_list.append(RPA10Model)
-        self.multi_func_list.append(RPA10Model)
-
-        from sas.models.StarPolymer import StarPolymer
-        self.model_dictionary[StarPolymer.__name__] = StarPolymer
-#        self.shape_indep_list.append(StarPolymer)
-        self.model_name_list.append(StarPolymer.__name__)
-
-        from sas.models.SurfaceFractalModel import SurfaceFractalModel
-        self.model_dictionary[SurfaceFractalModel.__name__] = SurfaceFractalModel
-#        self.shape_indep_list.append(SurfaceFractalModel)
-        self.model_name_list.append(SurfaceFractalModel.__name__)
-        
-        from sas.models.TeubnerStreyModel import TeubnerStreyModel
-        self.model_dictionary[TeubnerStreyModel.__name__] = TeubnerStreyModel
-#        self.shape_indep_list.append(TeubnerStreyModel)
-        self.model_name_list.append(TeubnerStreyModel.__name__)
-
-        from sas.models.TwoLorentzianModel import TwoLorentzianModel
-        self.model_dictionary[TwoLorentzianModel.__name__] = TwoLorentzianModel
-#        self.shape_indep_list.append(TwoLorentzianModel)
-        self.model_name_list.append(TwoLorentzianModel.__name__)
-        
-        from sas.models.TwoPowerLawModel import TwoPowerLawModel
-        self.model_dictionary[TwoPowerLawModel.__name__] = TwoPowerLawModel
-#        self.shape_indep_list.append(TwoPowerLawModel)
-        self.model_name_list.append(TwoPowerLawModel.__name__)
-        
-        from sas.models.UnifiedPowerRgModel import UnifiedPowerRgModel
-        self.model_dictionary[UnifiedPowerRgModel.__name__] = UnifiedPowerRgModel
-#        self.shape_indep_list.append(UnifiedPowerRgModel)
-        self.multi_func_list.append(UnifiedPowerRgModel)
-
-        from sas.models.LineModel import LineModel
-        self.model_dictionary[LineModel.__name__] = LineModel
-#        self.shape_indep_list.append(LineModel)
-        self.model_name_list.append(LineModel.__name__)
-        
-        from sas.models.ReflectivityModel import ReflectivityModel
-        self.model_dictionary[ReflectivityModel.__name__] = ReflectivityModel
-#        self.shape_indep_list.append(ReflectivityModel)
-        self.multi_func_list.append(ReflectivityModel)
-        
-        from sas.models.ReflectivityIIModel import ReflectivityIIModel
-        self.model_dictionary[ReflectivityIIModel.__name__] = ReflectivityIIModel
-#        self.shape_indep_list.append(ReflectivityIIModel)
-        self.multi_func_list.append(ReflectivityIIModel)
-        
-        from sas.models.GelFitModel import GelFitModel
-        self.model_dictionary[GelFitModel.__name__] = GelFitModel
-#        self.shape_indep_list.append(GelFitModel)
-        self.model_name_list.append(GelFitModel.__name__)
-
-        from sas.models.PringlesModel import PringlesModel
-        self.model_dictionary[PringlesModel.__name__] = PringlesModel
-#        self.shape_indep_list.append(PringlesModel)
-        self.model_name_list.append(PringlesModel.__name__)
-
-        from sas.models.RectangularPrismModel import RectangularPrismModel
-        self.model_dictionary[RectangularPrismModel.__name__] = RectangularPrismModel
-#        self.shape_list.append(RectangularPrismModel)
-        self.multiplication_factor.append(RectangularPrismModel)
-        self.model_name_list.append(RectangularPrismModel.__name__)
-
-        from sas.models.RectangularHollowPrismInfThinWallsModel import RectangularHollowPrismInfThinWallsModel
-        self.model_dictionary[RectangularHollowPrismInfThinWallsModel.__name__] = RectangularHollowPrismInfThinWallsModel
-#        self.shape_list.append(RectangularHollowPrismInfThinWallsModel)
-        self.multiplication_factor.append(RectangularHollowPrismInfThinWallsModel)
-        self.model_name_list.append(RectangularHollowPrismInfThinWallsModel.__name__)
-
-        from sas.models.RectangularHollowPrismModel import RectangularHollowPrismModel
-        self.model_dictionary[RectangularHollowPrismModel.__name__] = RectangularHollowPrismModel
-#        self.shape_list.append(RectangularHollowPrismModel)
-        self.multiplication_factor.append(RectangularHollowPrismModel)
-        self.model_name_list.append(RectangularHollowPrismModel.__name__)
-
-        from sas.models.MicelleSphCoreModel import MicelleSphCoreModel
-        self.model_dictionary[MicelleSphCoreModel.__name__] = MicelleSphCoreModel
-#        self.shape_list.append(MicelleSphCoreModel)
-        self.multiplication_factor.append(MicelleSphCoreModel)
-        self.model_name_list.append(MicelleSphCoreModel.__name__)
+        try:
+            from sas.models.PowerLawAbsModel import PowerLawAbsModel
+
+            self.model_dictionary[PowerLawAbsModel.__name__] = PowerLawAbsModel
+            #        self.shape_indep_list.append(PowerLawAbsModel)
+            self.model_name_list.append(PowerLawAbsModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.BEPolyelectrolyte import BEPolyelectrolyte
+
+            self.model_dictionary[BEPolyelectrolyte.__name__] = BEPolyelectrolyte
+            #        self.shape_indep_list.append(BEPolyelectrolyte)
+            self.model_name_list.append(BEPolyelectrolyte.__name__)
+            self.form_factor_dict[str(wx.NewId())] =  [SphereModel]
+        except:
+            pass
+
+        try:
+            from sas.models.BroadPeakModel import BroadPeakModel
+
+            self.model_dictionary[BroadPeakModel.__name__] = BroadPeakModel
+            #        self.shape_indep_list.append(BroadPeakModel)
+            self.model_name_list.append(BroadPeakModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.CorrLengthModel import CorrLengthModel
+
+            self.model_dictionary[CorrLengthModel.__name__] = CorrLengthModel
+            #        self.shape_indep_list.append(CorrLengthModel)
+            self.model_name_list.append(CorrLengthModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.DABModel import DABModel
+
+            self.model_dictionary[DABModel.__name__] = DABModel
+            #        self.shape_indep_list.append(DABModel)
+            self.model_name_list.append(DABModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.DebyeModel import DebyeModel
+
+            self.model_dictionary[DebyeModel.__name__] = DebyeModel
+            #        self.shape_indep_list.append(DebyeModel)
+            self.model_name_list.append(DebyeModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.FractalModel import FractalModel
+
+            self.model_dictionary[FractalModel.__name__] = FractalModel
+            #        self.shape_indep_list.append(FractalModel)
+            self.model_name_list.append(FractalModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.FractalCoreShellModel import FractalCoreShellModel
+
+            self.model_dictionary[FractalCoreShellModel.__name__] = FractalCoreShellModel
+            #        self.shape_indep_list.append(FractalCoreShellModel)
+            self.model_name_list.append(FractalCoreShellModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.GaussLorentzGelModel import GaussLorentzGelModel
+
+            self.model_dictionary[GaussLorentzGelModel.__name__] = GaussLorentzGelModel
+            #        self.shape_indep_list.append(GaussLorentzGelModel)
+            self.model_name_list.append(GaussLorentzGelModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.GuinierModel import GuinierModel
+
+            self.model_dictionary[GuinierModel.__name__] = GuinierModel
+            #        self.shape_indep_list.append(GuinierModel)
+            self.model_name_list.append(GuinierModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.GuinierPorodModel import GuinierPorodModel
+
+            self.model_dictionary[GuinierPorodModel.__name__] = GuinierPorodModel
+            #        self.shape_indep_list.append(GuinierPorodModel)
+            self.model_name_list.append(GuinierPorodModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.LorentzModel import LorentzModel
+
+            self.model_dictionary[LorentzModel.__name__] = LorentzModel
+            #        self.shape_indep_list.append(LorentzModel)
+            self.model_name_list.append(LorentzModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.MassFractalModel import MassFractalModel
+
+            self.model_dictionary[MassFractalModel.__name__] = MassFractalModel
+            #        self.shape_indep_list.append(MassFractalModel)
+            self.model_name_list.append(MassFractalModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.MassSurfaceFractal import MassSurfaceFractal
+
+            self.model_dictionary[MassSurfaceFractal.__name__] = MassSurfaceFractal
+            #        self.shape_indep_list.append(MassSurfaceFractal)
+            self.model_name_list.append(MassSurfaceFractal.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.PeakGaussModel import PeakGaussModel
+
+            self.model_dictionary[PeakGaussModel.__name__] = PeakGaussModel
+            #        self.shape_indep_list.append(PeakGaussModel)
+            self.model_name_list.append(PeakGaussModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.PeakLorentzModel import PeakLorentzModel
+
+            self.model_dictionary[PeakLorentzModel.__name__] = PeakLorentzModel
+            #        self.shape_indep_list.append(PeakLorentzModel)
+            self.model_name_list.append(PeakLorentzModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.Poly_GaussCoil import Poly_GaussCoil
+
+            self.model_dictionary[Poly_GaussCoil.__name__] = Poly_GaussCoil
+            #        self.shape_indep_list.append(Poly_GaussCoil)
+            self.model_name_list.append(Poly_GaussCoil.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.PolymerExclVolume import PolymerExclVolume
+
+            self.model_dictionary[PolymerExclVolume.__name__] = PolymerExclVolume
+            #        self.shape_indep_list.append(PolymerExclVolume)
+            self.model_name_list.append(PolymerExclVolume.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.PorodModel import PorodModel
+
+            self.model_dictionary[PorodModel.__name__] = PorodModel
+            #        self.shape_indep_list.append(PorodModel)
+            self.model_name_list.append(PorodModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.RPA10Model import RPA10Model
+
+            self.model_dictionary[RPA10Model.__name__] = RPA10Model
+            #        self.shape_indep_list.append(RPA10Model)
+            self.multi_func_list.append(RPA10Model)
+        except:
+            pass
+
+        try:
+            from sas.models.StarPolymer import StarPolymer
+
+            self.model_dictionary[StarPolymer.__name__] = StarPolymer
+            #        self.shape_indep_list.append(StarPolymer)
+            self.model_name_list.append(StarPolymer.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.SurfaceFractalModel import SurfaceFractalModel
+
+            self.model_dictionary[SurfaceFractalModel.__name__] = SurfaceFractalModel
+            #        self.shape_indep_list.append(SurfaceFractalModel)
+            self.model_name_list.append(SurfaceFractalModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.TeubnerStreyModel import TeubnerStreyModel
+
+            self.model_dictionary[TeubnerStreyModel.__name__] = TeubnerStreyModel
+            #        self.shape_indep_list.append(TeubnerStreyModel)
+            self.model_name_list.append(TeubnerStreyModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.TwoLorentzianModel import TwoLorentzianModel
+
+            self.model_dictionary[TwoLorentzianModel.__name__] = TwoLorentzianModel
+            #        self.shape_indep_list.append(TwoLorentzianModel)
+            self.model_name_list.append(TwoLorentzianModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.TwoPowerLawModel import TwoPowerLawModel
+
+            self.model_dictionary[TwoPowerLawModel.__name__] = TwoPowerLawModel
+            #        self.shape_indep_list.append(TwoPowerLawModel)
+            self.model_name_list.append(TwoPowerLawModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.UnifiedPowerRgModel import UnifiedPowerRgModel
+
+            self.model_dictionary[UnifiedPowerRgModel.__name__] = UnifiedPowerRgModel
+            #        self.shape_indep_list.append(UnifiedPowerRgModel)
+            self.multi_func_list.append(UnifiedPowerRgModel)
+        except:
+            pass
+
+        try:
+            from sas.models.LineModel import LineModel
+
+            self.model_dictionary[LineModel.__name__] = LineModel
+            #        self.shape_indep_list.append(LineModel)
+            self.model_name_list.append(LineModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.ReflectivityModel import ReflectivityModel
+
+            self.model_dictionary[ReflectivityModel.__name__] = ReflectivityModel
+            #        self.shape_indep_list.append(ReflectivityModel)
+            self.multi_func_list.append(ReflectivityModel)
+        except:
+            pass
+
+        try:
+            from sas.models.ReflectivityIIModel import ReflectivityIIModel
+
+            self.model_dictionary[ReflectivityIIModel.__name__] = ReflectivityIIModel
+            #        self.shape_indep_list.append(ReflectivityIIModel)
+            self.multi_func_list.append(ReflectivityIIModel)
+        except:
+            pass
+
+        try:
+            from sas.models.GelFitModel import GelFitModel
+
+            self.model_dictionary[GelFitModel.__name__] = GelFitModel
+            #        self.shape_indep_list.append(GelFitModel)
+            self.model_name_list.append(GelFitModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.PringlesModel import PringlesModel
+
+            self.model_dictionary[PringlesModel.__name__] = PringlesModel
+            #        self.shape_indep_list.append(PringlesModel)
+            self.model_name_list.append(PringlesModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.RectangularPrismModel import RectangularPrismModel
+
+            self.model_dictionary[RectangularPrismModel.__name__] = RectangularPrismModel
+            #        self.shape_list.append(RectangularPrismModel)
+            self.multiplication_factor.append(RectangularPrismModel)
+            self.model_name_list.append(RectangularPrismModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.RectangularHollowPrismInfThinWallsModel import RectangularHollowPrismInfThinWallsModel
+
+            self.model_dictionary[RectangularHollowPrismInfThinWallsModel.__name__] = RectangularHollowPrismInfThinWallsModel
+            #        self.shape_list.append(RectangularHollowPrismInfThinWallsModel)
+            self.multiplication_factor.append(RectangularHollowPrismInfThinWallsModel)
+            self.model_name_list.append(RectangularHollowPrismInfThinWallsModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.RectangularHollowPrismModel import RectangularHollowPrismModel
+
+            self.model_dictionary[RectangularHollowPrismModel.__name__] = RectangularHollowPrismModel
+            #        self.shape_list.append(RectangularHollowPrismModel)
+            self.multiplication_factor.append(RectangularHollowPrismModel)
+            self.model_name_list.append(RectangularHollowPrismModel.__name__)
+        except:
+            pass
+
+        try:
+            from sas.models.MicelleSphCoreModel import MicelleSphCoreModel
+
+            self.model_dictionary[MicelleSphCoreModel.__name__] = MicelleSphCoreModel
+            #        self.shape_list.append(MicelleSphCoreModel)
+            self.multiplication_factor.append(MicelleSphCoreModel)
+            self.model_name_list.append(MicelleSphCoreModel.__name__)
+        except:
+            pass
+
 
 
Index: test/park_integration/test/utest_fit_cylinder.py
===================================================================
--- test/park_integration/test/utest_fit_cylinder.py	(revision 35ec2791ba4240f8154f552ce6ead4e850779a20)
+++ test/park_integration/test/utest_fit_cylinder.py	(revision a10364b52df3f74f54be6b644163d5d92b3a675b)
@@ -10,5 +10,4 @@
 from sas.dataloader.loader import Loader
 
-#@unittest.skip("")
 class TestSingleFit(unittest.TestCase):
     """ test single fitting """
Index: test/sasdataloader/test/utest_averaging.py
===================================================================
--- test/sasdataloader/test/utest_averaging.py	(revision ef3445e276566d82d290fc50c6d95ab9611b9973)
+++ test/sasdataloader/test/utest_averaging.py	(revision a10364b52df3f74f54be6b644163d5d92b3a675b)
@@ -196,9 +196,13 @@
         import math
         
+        nbins = 19
+        phi_min = math.pi / (nbins + 1)
+        phi_max = math.pi * 2 - phi_min
+        
         r = SectorPhi(r_min=.005,
                       r_max=.01,
-                      phi_min=0.15707963,
-                      phi_max=math.pi*2.-0.15707963,
-                      nbins=19)
+                      phi_min=phi_min,
+                      phi_max=phi_max,
+                      nbins=nbins)
         o = r(self.data)
 
