Skip to content

Instantly share code, notes, and snippets.

@r-ryantm
Created October 21, 2021 06:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save r-ryantm/24a4654ae2ea64887beedfb50b595d84 to your computer and use it in GitHub Desktop.
Save r-ryantm/24a4654ae2ea64887beedfb50b595d84 to your computer and use it in GitHub Desktop.
/nix/store/ccn68vrq9flvj0bxx99an47l6pyng05i-python3.8-vispy-0.9.1
├── lib
│   └── python3.8
│   └── site-packages
│   ├── vispy
│   │   ├── app
│   │   │   ├── application.py
│   │   │   ├── backends
│   │   │   │   ├── _egl.py
│   │   │   │   ├── _glfw.py
│   │   │   │   ├── __init__.py
│   │   │   │   ├── _jupyter_rfb.py
│   │   │   │   ├── _offscreen_util.py
│   │   │   │   ├── _osmesa.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── _egl.cpython-38.pyc
│   │   │   │   │   ├── _glfw.cpython-38.pyc
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── _jupyter_rfb.cpython-38.pyc
│   │   │   │   │   ├── _offscreen_util.cpython-38.pyc
│   │   │   │   │   ├── _osmesa.cpython-38.pyc
│   │   │   │   │   ├── _pyglet.cpython-38.pyc
│   │   │   │   │   ├── _pyqt4.cpython-38.pyc
│   │   │   │   │   ├── _pyqt5.cpython-38.pyc
│   │   │   │   │   ├── _pyqt6.cpython-38.pyc
│   │   │   │   │   ├── _pyside2.cpython-38.pyc
│   │   │   │   │   ├── _pyside6.cpython-38.pyc
│   │   │   │   │   ├── _pyside.cpython-38.pyc
│   │   │   │   │   ├── _qt.cpython-38.pyc
│   │   │   │   │   ├── _sdl2.cpython-38.pyc
│   │   │   │   │   ├── _template.cpython-38.pyc
│   │   │   │   │   ├── _test.cpython-38.pyc
│   │   │   │   │   ├── _tk.cpython-38.pyc
│   │   │   │   │   └── _wx.cpython-38.pyc
│   │   │   │   ├── _pyglet.py
│   │   │   │   ├── _pyqt4.py
│   │   │   │   ├── _pyqt5.py
│   │   │   │   ├── _pyqt6.py
│   │   │   │   ├── _pyside2.py
│   │   │   │   ├── _pyside6.py
│   │   │   │   ├── _pyside.py
│   │   │   │   ├── _qt.py
│   │   │   │   ├── _sdl2.py
│   │   │   │   ├── _template.py
│   │   │   │   ├── _test.py
│   │   │   │   ├── tests
│   │   │   │   │   ├── __init__.py
│   │   │   │   │   ├── __pycache__
│   │   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   │   ├── test_offscreen_util.cpython-38.pyc
│   │   │   │   │   │   └── test_rfb.cpython-38.pyc
│   │   │   │   │   ├── test_offscreen_util.py
│   │   │   │   │   └── test_rfb.py
│   │   │   │   ├── _tk.py
│   │   │   │   └── _wx.py
│   │   │   ├── base.py
│   │   │   ├── canvas.py
│   │   │   ├── _default_app.py
│   │   │   ├── _detect_eventloop.py
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── application.cpython-38.pyc
│   │   │   │   ├── base.cpython-38.pyc
│   │   │   │   ├── canvas.cpython-38.pyc
│   │   │   │   ├── _default_app.cpython-38.pyc
│   │   │   │   ├── _detect_eventloop.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── qt.cpython-38.pyc
│   │   │   │   └── timer.cpython-38.pyc
│   │   │   ├── qt.py
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_app.cpython-38.pyc
│   │   │   │   │   ├── test_backends.cpython-38.pyc
│   │   │   │   │   ├── test_canvas.cpython-38.pyc
│   │   │   │   │   ├── test_context.cpython-38.pyc
│   │   │   │   │   ├── test_qt.cpython-38.pyc
│   │   │   │   │   └── test_simultaneous.cpython-38.pyc
│   │   │   │   ├── qt-designer.ui
│   │   │   │   ├── test_app.py
│   │   │   │   ├── test_backends.py
│   │   │   │   ├── test_canvas.py
│   │   │   │   ├── test_context.py
│   │   │   │   ├── test_qt.py
│   │   │   │   └── test_simultaneous.py
│   │   │   └── timer.py
│   │   ├── color
│   │   │   ├── color_array.py
│   │   │   ├── _color_dict.py
│   │   │   ├── colormap.py
│   │   │   ├── color_space.py
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── color_array.cpython-38.pyc
│   │   │   │   ├── _color_dict.cpython-38.pyc
│   │   │   │   ├── colormap.cpython-38.pyc
│   │   │   │   ├── color_space.cpython-38.pyc
│   │   │   │   └── __init__.cpython-38.pyc
│   │   │   └── tests
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   └── test_color.cpython-38.pyc
│   │   │   └── test_color.py
│   │   ├── conftest.py
│   │   ├── ext
│   │   │   ├── cocoapy.py
│   │   │   ├── cubehelix.py
│   │   │   ├── egl.py
│   │   │   ├── fontconfig.py
│   │   │   ├── gdi32plus.py
│   │   │   ├── __init__.py
│   │   │   ├── osmesa.py
│   │   │   └── __pycache__
│   │   │   ├── cocoapy.cpython-38.pyc
│   │   │   ├── cubehelix.cpython-38.pyc
│   │   │   ├── egl.cpython-38.pyc
│   │   │   ├── fontconfig.cpython-38.pyc
│   │   │   ├── gdi32plus.cpython-38.pyc
│   │   │   ├── __init__.cpython-38.pyc
│   │   │   └── osmesa.cpython-38.pyc
│   │   ├── geometry
│   │   │   ├── calculations.py
│   │   │   ├── curves.py
│   │   │   ├── generation.py
│   │   │   ├── __init__.py
│   │   │   ├── isocurve.py
│   │   │   ├── isosurface.py
│   │   │   ├── meshdata.py
│   │   │   ├── normals.py
│   │   │   ├── parametric.py
│   │   │   ├── polygon.py
│   │   │   ├── __pycache__
│   │   │   │   ├── calculations.cpython-38.pyc
│   │   │   │   ├── curves.cpython-38.pyc
│   │   │   │   ├── generation.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── isocurve.cpython-38.pyc
│   │   │   │   ├── isosurface.cpython-38.pyc
│   │   │   │   ├── meshdata.cpython-38.pyc
│   │   │   │   ├── normals.cpython-38.pyc
│   │   │   │   ├── parametric.cpython-38.pyc
│   │   │   │   ├── polygon.cpython-38.pyc
│   │   │   │   ├── rect.cpython-38.pyc
│   │   │   │   ├── torusknot.cpython-38.pyc
│   │   │   │   ├── triangulation.cpython-38.pyc
│   │   │   │   └── _triangulation_debugger.cpython-38.pyc
│   │   │   ├── rect.py
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_calculations.cpython-38.pyc
│   │   │   │   │   ├── test_generation.cpython-38.pyc
│   │   │   │   │   ├── test_meshdata.cpython-38.pyc
│   │   │   │   │   └── test_triangulation.cpython-38.pyc
│   │   │   │   ├── test_calculations.py
│   │   │   │   ├── test_generation.py
│   │   │   │   ├── test_meshdata.py
│   │   │   │   └── test_triangulation.py
│   │   │   ├── torusknot.py
│   │   │   ├── _triangulation_debugger.py
│   │   │   └── triangulation.py
│   │   ├── gloo
│   │   │   ├── buffer.py
│   │   │   ├── context.py
│   │   │   ├── framebuffer.py
│   │   │   ├── gl
│   │   │   │   ├── _constants.py
│   │   │   │   ├── dummy.py
│   │   │   │   ├── _es2.py
│   │   │   │   ├── es2.py
│   │   │   │   ├── _gl2.py
│   │   │   │   ├── gl2.py
│   │   │   │   ├── glplus.py
│   │   │   │   ├── __init__.py
│   │   │   │   ├── _proxy.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── _constants.cpython-38.pyc
│   │   │   │   │   ├── dummy.cpython-38.pyc
│   │   │   │   │   ├── _es2.cpython-38.pyc
│   │   │   │   │   ├── es2.cpython-38.pyc
│   │   │   │   │   ├── _gl2.cpython-38.pyc
│   │   │   │   │   ├── gl2.cpython-38.pyc
│   │   │   │   │   ├── glplus.cpython-38.pyc
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── _proxy.cpython-38.pyc
│   │   │   │   │   ├── _pyopengl2.cpython-38.pyc
│   │   │   │   │   └── pyopengl2.cpython-38.pyc
│   │   │   │   ├── _pyopengl2.py
│   │   │   │   ├── pyopengl2.py
│   │   │   │   └── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_basics.cpython-38.pyc
│   │   │   │   │   ├── test_functionality.cpython-38.pyc
│   │   │   │   │   ├── test_names.cpython-38.pyc
│   │   │   │   │   └── test_use.cpython-38.pyc
│   │   │   │   ├── test_basics.py
│   │   │   │   ├── test_functionality.py
│   │   │   │   ├── test_names.py
│   │   │   │   └── test_use.py
│   │   │   ├── glir.py
│   │   │   ├── globject.py
│   │   │   ├── __init__.py
│   │   │   ├── preprocessor.py
│   │   │   ├── program.py
│   │   │   ├── __pycache__
│   │   │   │   ├── buffer.cpython-38.pyc
│   │   │   │   ├── context.cpython-38.pyc
│   │   │   │   ├── framebuffer.cpython-38.pyc
│   │   │   │   ├── glir.cpython-38.pyc
│   │   │   │   ├── globject.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── preprocessor.cpython-38.pyc
│   │   │   │   ├── program.cpython-38.pyc
│   │   │   │   ├── texture.cpython-38.pyc
│   │   │   │   ├── util.cpython-38.pyc
│   │   │   │   └── wrappers.cpython-38.pyc
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_buffer.cpython-38.pyc
│   │   │   │   │   ├── test_context.cpython-38.pyc
│   │   │   │   │   ├── test_framebuffer.cpython-38.pyc
│   │   │   │   │   ├── test_glir.cpython-38.pyc
│   │   │   │   │   ├── test_globject.cpython-38.pyc
│   │   │   │   │   ├── test_program.cpython-38.pyc
│   │   │   │   │   ├── test_texture.cpython-38.pyc
│   │   │   │   │   ├── test_use_gloo.cpython-38.pyc
│   │   │   │   │   ├── test_util.cpython-38.pyc
│   │   │   │   │   └── test_wrappers.cpython-38.pyc
│   │   │   │   ├── test_buffer.py
│   │   │   │   ├── test_context.py
│   │   │   │   ├── test_framebuffer.py
│   │   │   │   ├── test_glir.py
│   │   │   │   ├── test_globject.py
│   │   │   │   ├── test_program.py
│   │   │   │   ├── test_texture.py
│   │   │   │   ├── test_use_gloo.py
│   │   │   │   ├── test_util.py
│   │   │   │   └── test_wrappers.py
│   │   │   ├── texture.py
│   │   │   ├── util.py
│   │   │   └── wrappers.py
│   │   ├── glsl
│   │   │   ├── antialias
│   │   │   │   ├── antialias.glsl
│   │   │   │   ├── cap-butt.glsl
│   │   │   │   ├── cap.glsl
│   │   │   │   ├── cap-round.glsl
│   │   │   │   ├── caps.glsl
│   │   │   │   ├── cap-square.glsl
│   │   │   │   ├── cap-triangle-in.glsl
│   │   │   │   ├── cap-triangle-out.glsl
│   │   │   │   ├── filled.glsl
│   │   │   │   ├── __init__.py
│   │   │   │   ├── outline.glsl
│   │   │   │   ├── __pycache__
│   │   │   │   │   └── __init__.cpython-38.pyc
│   │   │   │   └── stroke.glsl
│   │   │   ├── arrowheads
│   │   │   │   ├── angle.glsl
│   │   │   │   ├── arrowheads.frag
│   │   │   │   ├── arrowheads.glsl
│   │   │   │   ├── arrowheads.vert
│   │   │   │   ├── curved.glsl
│   │   │   │   ├── inhibitor.glsl
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   └── __init__.cpython-38.pyc
│   │   │   │   ├── stealth.glsl
│   │   │   │   ├── triangle.glsl
│   │   │   │   └── util.glsl
│   │   │   ├── arrows
│   │   │   │   ├── angle-30.glsl
│   │   │   │   ├── angle-60.glsl
│   │   │   │   ├── angle-90.glsl
│   │   │   │   ├── arrow.frag
│   │   │   │   ├── arrows.glsl
│   │   │   │   ├── arrow.vert
│   │   │   │   ├── common.glsl
│   │   │   │   ├── curved.glsl
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   └── __init__.cpython-38.pyc
│   │   │   │   ├── stealth.glsl
│   │   │   │   ├── triangle-30.glsl
│   │   │   │   ├── triangle-60.glsl
│   │   │   │   ├── triangle-90.glsl
│   │   │   │   └── util.glsl
│   │   │   ├── build_spatial_filters.py
│   │   │   ├── collections
│   │   │   │   ├── agg-fast-path.frag
│   │   │   │   ├── agg-fast-path.vert
│   │   │   │   ├── agg-glyph.frag
│   │   │   │   ├── agg-glyph.vert
│   │   │   │   ├── agg-marker.frag
│   │   │   │   ├── agg-marker.vert
│   │   │   │   ├── agg-path.frag
│   │   │   │   ├── agg-path.vert
│   │   │   │   ├── agg-point.frag
│   │   │   │   ├── agg-point.vert
│   │   │   │   ├── agg-segment.frag
│   │   │   │   ├── agg-segment.vert
│   │   │   │   ├── __init__.py
│   │   │   │   ├── marker.frag
│   │   │   │   ├── marker.vert
│   │   │   │   ├── __pycache__
│   │   │   │   │   └── __init__.cpython-38.pyc
│   │   │   │   ├── raw-path.frag
│   │   │   │   ├── raw-path.vert
│   │   │   │   ├── raw-point.frag
│   │   │   │   ├── raw-point.vert
│   │   │   │   ├── raw-segment.frag
│   │   │   │   ├── raw-segment.vert
│   │   │   │   ├── raw-triangle.frag
│   │   │   │   ├── raw-triangle.vert
│   │   │   │   ├── sdf-glyph.frag
│   │   │   │   ├── sdf-glyph-ticks.vert
│   │   │   │   ├── sdf-glyph.vert
│   │   │   │   └── tick-labels.vert
│   │   │   ├── colormaps
│   │   │   │   ├── autumn.glsl
│   │   │   │   ├── blues.glsl
│   │   │   │   ├── colormaps.glsl
│   │   │   │   ├── color-space.glsl
│   │   │   │   ├── cool.glsl
│   │   │   │   ├── fire.glsl
│   │   │   │   ├── gray.glsl
│   │   │   │   ├── greens.glsl
│   │   │   │   ├── hot.glsl
│   │   │   │   ├── icefire.glsl
│   │   │   │   ├── ice.glsl
│   │   │   │   ├── __init__.py
│   │   │   │   ├── parse.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   └── parse.cpython-38.pyc
│   │   │   │   ├── reds.glsl
│   │   │   │   ├── spring.glsl
│   │   │   │   ├── summer.glsl
│   │   │   │   ├── user.glsl
│   │   │   │   ├── util.glsl
│   │   │   │   ├── wheel.glsl
│   │   │   │   └── winter.glsl
│   │   │   ├── __init__.py
│   │   │   ├── lines
│   │   │   │   ├── agg.frag
│   │   │   │   ├── agg.vert
│   │   │   │   ├── __init__.py
│   │   │   │   └── __pycache__
│   │   │   │   └── __init__.cpython-38.pyc
│   │   │   ├── markers
│   │   │   │   ├── arrow.glsl
│   │   │   │   ├── asterisk.glsl
│   │   │   │   ├── chevron.glsl
│   │   │   │   ├── clover.glsl
│   │   │   │   ├── club.glsl
│   │   │   │   ├── cross.glsl
│   │   │   │   ├── diamond.glsl
│   │   │   │   ├── disc.glsl
│   │   │   │   ├── ellipse.glsl
│   │   │   │   ├── hbar.glsl
│   │   │   │   ├── heart.glsl
│   │   │   │   ├── infinity.glsl
│   │   │   │   ├── __init__.py
│   │   │   │   ├── marker.frag
│   │   │   │   ├── marker-sdf.frag
│   │   │   │   ├── marker-sdf.vert
│   │   │   │   ├── markers.glsl
│   │   │   │   ├── marker.vert
│   │   │   │   ├── pin.glsl
│   │   │   │   ├── __pycache__
│   │   │   │   │   └── __init__.cpython-38.pyc
│   │   │   │   ├── ring.glsl
│   │   │   │   ├── spade.glsl
│   │   │   │   ├── square.glsl
│   │   │   │   ├── tag.glsl
│   │   │   │   ├── triangle.glsl
│   │   │   │   └── vbar.glsl
│   │   │   ├── math
│   │   │   │   ├── circle-through-2-points.glsl
│   │   │   │   ├── constants.glsl
│   │   │   │   ├── double.glsl
│   │   │   │   ├── functions.glsl
│   │   │   │   ├── __init__.py
│   │   │   │   ├── point-to-line-distance.glsl
│   │   │   │   ├── point-to-line-projection.glsl
│   │   │   │   ├── __pycache__
│   │   │   │   │   └── __init__.cpython-38.pyc
│   │   │   │   ├── signed-line-distance.glsl
│   │   │   │   └── signed-segment-distance.glsl
│   │   │   ├── misc
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   └── __init__.cpython-38.pyc
│   │   │   │   ├── regular-grid.frag
│   │   │   │   ├── spatial-filters.frag
│   │   │   │   └── viewport-NDC.glsl
│   │   │   ├── __pycache__
│   │   │   │   ├── build_spatial_filters.cpython-38.pyc
│   │   │   │   └── __init__.cpython-38.pyc
│   │   │   └── transforms
│   │   │   ├── azimuthal-equal-area.glsl
│   │   │   ├── azimuthal-equidistant.glsl
│   │   │   ├── hammer.glsl
│   │   │   ├── identity_forward.glsl
│   │   │   ├── identity.glsl
│   │   │   ├── identity_inverse.glsl
│   │   │   ├── __init__.py
│   │   │   ├── linear-scale.glsl
│   │   │   ├── log-scale.glsl
│   │   │   ├── mercator-transverse-forward.glsl
│   │   │   ├── mercator-transverse-inverse.glsl
│   │   │   ├── panzoom.glsl
│   │   │   ├── polar.glsl
│   │   │   ├── position.glsl
│   │   │   ├── power-scale.glsl
│   │   │   ├── projection.glsl
│   │   │   ├── pvm.glsl
│   │   │   ├── __pycache__
│   │   │   │   └── __init__.cpython-38.pyc
│   │   │   ├── rotate.glsl
│   │   │   ├── trackball.glsl
│   │   │   ├── translate.glsl
│   │   │   ├── transverse_mercator.glsl
│   │   │   ├── viewport-clipping.glsl
│   │   │   ├── viewport.glsl
│   │   │   ├── viewport-transform.glsl
│   │   │   ├── x.glsl
│   │   │   ├── y.glsl
│   │   │   └── z.glsl
│   │   ├── __init__.py
│   │   ├── io
│   │   │   ├── _data
│   │   │   │   └── spatial-filters.npy
│   │   │   ├── datasets.py
│   │   │   ├── image.py
│   │   │   ├── __init__.py
│   │   │   ├── mesh.py
│   │   │   ├── __pycache__
│   │   │   │   ├── datasets.cpython-38.pyc
│   │   │   │   ├── image.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── mesh.cpython-38.pyc
│   │   │   │   ├── stl.cpython-38.pyc
│   │   │   │   └── wavefront.cpython-38.pyc
│   │   │   ├── stl.py
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_image.cpython-38.pyc
│   │   │   │   │   └── test_io.cpython-38.pyc
│   │   │   │   ├── test_image.py
│   │   │   │   └── test_io.py
│   │   │   └── wavefront.py
│   │   ├── plot
│   │   │   ├── fig.py
│   │   │   ├── __init__.py
│   │   │   ├── plotwidget.py
│   │   │   ├── __pycache__
│   │   │   │   ├── fig.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   └── plotwidget.cpython-38.pyc
│   │   │   └── tests
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   └── test_plot.cpython-38.pyc
│   │   │   └── test_plot.py
│   │   ├── __pycache__
│   │   │   ├── conftest.cpython-38.pyc
│   │   │   ├── __init__.cpython-38.pyc
│   │   │   └── version.cpython-38.pyc
│   │   ├── scene
│   │   │   ├── cameras
│   │   │   │   ├── arcball.py
│   │   │   │   ├── base_camera.py
│   │   │   │   ├── _base.py
│   │   │   │   ├── fly.py
│   │   │   │   ├── __init__.py
│   │   │   │   ├── magnify.py
│   │   │   │   ├── panzoom.py
│   │   │   │   ├── perspective.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── arcball.cpython-38.pyc
│   │   │   │   │   ├── base_camera.cpython-38.pyc
│   │   │   │   │   ├── _base.cpython-38.pyc
│   │   │   │   │   ├── fly.cpython-38.pyc
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── magnify.cpython-38.pyc
│   │   │   │   │   ├── panzoom.cpython-38.pyc
│   │   │   │   │   ├── perspective.cpython-38.pyc
│   │   │   │   │   └── turntable.cpython-38.pyc
│   │   │   │   ├── tests
│   │   │   │   │   ├── __init__.py
│   │   │   │   │   ├── __pycache__
│   │   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   │   ├── test_link.cpython-38.pyc
│   │   │   │   │   │   └── test_perspective.cpython-38.pyc
│   │   │   │   │   ├── test_link.py
│   │   │   │   │   └── test_perspective.py
│   │   │   │   └── turntable.py
│   │   │   ├── canvas.py
│   │   │   ├── events.py
│   │   │   ├── __init__.py
│   │   │   ├── node.py
│   │   │   ├── __pycache__
│   │   │   │   ├── canvas.cpython-38.pyc
│   │   │   │   ├── events.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── node.cpython-38.pyc
│   │   │   │   ├── subscene.cpython-38.pyc
│   │   │   │   └── visuals.cpython-38.pyc
│   │   │   ├── subscene.py
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_canvas.cpython-38.pyc
│   │   │   │   │   ├── test_node.cpython-38.pyc
│   │   │   │   │   └── test_visuals.cpython-38.pyc
│   │   │   │   ├── test_canvas.py
│   │   │   │   ├── test_node.py
│   │   │   │   └── test_visuals.py
│   │   │   ├── visuals.py
│   │   │   └── widgets
│   │   │   ├── anchor.py
│   │   │   ├── axis.py
│   │   │   ├── colorbar.py
│   │   │   ├── console.py
│   │   │   ├── grid.py
│   │   │   ├── __init__.py
│   │   │   ├── label.py
│   │   │   ├── __pycache__
│   │   │   │   ├── anchor.cpython-38.pyc
│   │   │   │   ├── axis.cpython-38.pyc
│   │   │   │   ├── colorbar.cpython-38.pyc
│   │   │   │   ├── console.cpython-38.pyc
│   │   │   │   ├── grid.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── label.cpython-38.pyc
│   │   │   │   ├── viewbox.cpython-38.pyc
│   │   │   │   └── widget.cpython-38.pyc
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   └── test_colorbar.cpython-38.pyc
│   │   │   │   └── test_colorbar.py
│   │   │   ├── viewbox.py
│   │   │   └── widget.py
│   │   ├── testing
│   │   │   ├── image_tester.py
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── image_tester.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── rendered_array_tester.cpython-38.pyc
│   │   │   │   ├── _runners.cpython-38.pyc
│   │   │   │   └── _testing.cpython-38.pyc
│   │   │   ├── rendered_array_tester.py
│   │   │   ├── _runners.py
│   │   │   ├── _testing.py
│   │   │   └── tests
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   └── test_testing.cpython-38.pyc
│   │   │   └── test_testing.py
│   │   ├── util
│   │   │   ├── bunch.py
│   │   │   ├── check_environment.py
│   │   │   ├── config.py
│   │   │   ├── dpi
│   │   │   │   ├── __init__.py
│   │   │   │   ├── _linux.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── _linux.cpython-38.pyc
│   │   │   │   │   ├── _quartz.cpython-38.pyc
│   │   │   │   │   └── _win32.cpython-38.pyc
│   │   │   │   ├── _quartz.py
│   │   │   │   ├── tests
│   │   │   │   │   ├── __init__.py
│   │   │   │   │   ├── __pycache__
│   │   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   │   └── test_dpi.cpython-38.pyc
│   │   │   │   │   └── test_dpi.py
│   │   │   │   └── _win32.py
│   │   │   ├── eq.py
│   │   │   ├── event.py
│   │   │   ├── fetching.py
│   │   │   ├── filter.py
│   │   │   ├── fonts
│   │   │   │   ├── data
│   │   │   │   │   ├── OpenSans-BoldItalic.ttf
│   │   │   │   │   ├── OpenSans-Bold.ttf
│   │   │   │   │   ├── OpenSans-Italic.ttf
│   │   │   │   │   └── OpenSans-Regular.ttf
│   │   │   │   ├── _freetype.py
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── _freetype.cpython-38.pyc
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── _quartz.cpython-38.pyc
│   │   │   │   │   ├── _triage.cpython-38.pyc
│   │   │   │   │   ├── _vispy_fonts.cpython-38.pyc
│   │   │   │   │   └── _win32.cpython-38.pyc
│   │   │   │   ├── _quartz.py
│   │   │   │   ├── tests
│   │   │   │   │   ├── __init__.py
│   │   │   │   │   ├── __pycache__
│   │   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   │   └── test_font.cpython-38.pyc
│   │   │   │   │   └── test_font.py
│   │   │   │   ├── _triage.py
│   │   │   │   ├── _vispy_fonts.py
│   │   │   │   └── _win32.py
│   │   │   ├── fourier.py
│   │   │   ├── frozen.py
│   │   │   ├── gallery_scraper.py
│   │   │   ├── __init__.py
│   │   │   ├── keys.py
│   │   │   ├── logs.py
│   │   │   ├── osmesa_gl.py
│   │   │   ├── profiler.py
│   │   │   ├── ptime.py
│   │   │   ├── __pycache__
│   │   │   │   ├── bunch.cpython-38.pyc
│   │   │   │   ├── check_environment.cpython-38.pyc
│   │   │   │   ├── config.cpython-38.pyc
│   │   │   │   ├── eq.cpython-38.pyc
│   │   │   │   ├── event.cpython-38.pyc
│   │   │   │   ├── fetching.cpython-38.pyc
│   │   │   │   ├── filter.cpython-38.pyc
│   │   │   │   ├── fourier.cpython-38.pyc
│   │   │   │   ├── frozen.cpython-38.pyc
│   │   │   │   ├── gallery_scraper.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── keys.cpython-38.pyc
│   │   │   │   ├── logs.cpython-38.pyc
│   │   │   │   ├── osmesa_gl.cpython-38.pyc
│   │   │   │   ├── profiler.cpython-38.pyc
│   │   │   │   ├── ptime.cpython-38.pyc
│   │   │   │   ├── quaternion.cpython-38.pyc
│   │   │   │   ├── transforms.cpython-38.pyc
│   │   │   │   └── wrappers.cpython-38.pyc
│   │   │   ├── quaternion.py
│   │   │   ├── svg
│   │   │   │   ├── base.py
│   │   │   │   ├── color.py
│   │   │   │   ├── element.py
│   │   │   │   ├── geometry.py
│   │   │   │   ├── group.py
│   │   │   │   ├── __init__.py
│   │   │   │   ├── length.py
│   │   │   │   ├── number.py
│   │   │   │   ├── path.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── base.cpython-38.pyc
│   │   │   │   │   ├── color.cpython-38.pyc
│   │   │   │   │   ├── element.cpython-38.pyc
│   │   │   │   │   ├── geometry.cpython-38.pyc
│   │   │   │   │   ├── group.cpython-38.pyc
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── length.cpython-38.pyc
│   │   │   │   │   ├── number.cpython-38.pyc
│   │   │   │   │   ├── path.cpython-38.pyc
│   │   │   │   │   ├── shapes.cpython-38.pyc
│   │   │   │   │   ├── style.cpython-38.pyc
│   │   │   │   │   ├── svg.cpython-38.pyc
│   │   │   │   │   ├── transformable.cpython-38.pyc
│   │   │   │   │   ├── transform.cpython-38.pyc
│   │   │   │   │   └── viewport.cpython-38.pyc
│   │   │   │   ├── shapes.py
│   │   │   │   ├── style.py
│   │   │   │   ├── svg.py
│   │   │   │   ├── transformable.py
│   │   │   │   ├── transform.py
│   │   │   │   └── viewport.py
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_config.cpython-38.pyc
│   │   │   │   │   ├── test_docstring_parameters.cpython-38.pyc
│   │   │   │   │   ├── test_emitter_group.cpython-38.pyc
│   │   │   │   │   ├── test_event_emitter.cpython-38.pyc
│   │   │   │   │   ├── test_fourier.cpython-38.pyc
│   │   │   │   │   ├── test_gallery_scraper.cpython-38.pyc
│   │   │   │   │   ├── test_import.cpython-38.pyc
│   │   │   │   │   ├── test_key.cpython-38.pyc
│   │   │   │   │   ├── test_logging.cpython-38.pyc
│   │   │   │   │   ├── test_run.cpython-38.pyc
│   │   │   │   │   ├── test_transforms.cpython-38.pyc
│   │   │   │   │   └── test_vispy.cpython-38.pyc
│   │   │   │   ├── test_config.py
│   │   │   │   ├── test_docstring_parameters.py
│   │   │   │   ├── test_emitter_group.py
│   │   │   │   ├── test_event_emitter.py
│   │   │   │   ├── test_fourier.py
│   │   │   │   ├── test_gallery_scraper.py
│   │   │   │   ├── test_import.py
│   │   │   │   ├── test_key.py
│   │   │   │   ├── test_logging.py
│   │   │   │   ├── test_run.py
│   │   │   │   ├── test_transforms.py
│   │   │   │   └── test_vispy.py
│   │   │   ├── transforms.py
│   │   │   └── wrappers.py
│   │   ├── version.py
│   │   └── visuals
│   │   ├── axis.py
│   │   ├── border.py
│   │   ├── box.py
│   │   ├── collections
│   │   │   ├── agg_fast_path_collection.py
│   │   │   ├── agg_path_collection.py
│   │   │   ├── agg_point_collection.py
│   │   │   ├── agg_segment_collection.py
│   │   │   ├── array_list.py
│   │   │   ├── base_collection.py
│   │   │   ├── collection.py
│   │   │   ├── __init__.py
│   │   │   ├── path_collection.py
│   │   │   ├── point_collection.py
│   │   │   ├── polygon_collection.py
│   │   │   ├── __pycache__
│   │   │   │   ├── agg_fast_path_collection.cpython-38.pyc
│   │   │   │   ├── agg_path_collection.cpython-38.pyc
│   │   │   │   ├── agg_point_collection.cpython-38.pyc
│   │   │   │   ├── agg_segment_collection.cpython-38.pyc
│   │   │   │   ├── array_list.cpython-38.pyc
│   │   │   │   ├── base_collection.cpython-38.pyc
│   │   │   │   ├── collection.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── path_collection.cpython-38.pyc
│   │   │   │   ├── point_collection.cpython-38.pyc
│   │   │   │   ├── polygon_collection.cpython-38.pyc
│   │   │   │   ├── raw_path_collection.cpython-38.pyc
│   │   │   │   ├── raw_point_collection.cpython-38.pyc
│   │   │   │   ├── raw_polygon_collection.cpython-38.pyc
│   │   │   │   ├── raw_segment_collection.cpython-38.pyc
│   │   │   │   ├── raw_triangle_collection.cpython-38.pyc
│   │   │   │   ├── segment_collection.cpython-38.pyc
│   │   │   │   ├── triangle_collection.cpython-38.pyc
│   │   │   │   └── util.cpython-38.pyc
│   │   │   ├── raw_path_collection.py
│   │   │   ├── raw_point_collection.py
│   │   │   ├── raw_polygon_collection.py
│   │   │   ├── raw_segment_collection.py
│   │   │   ├── raw_triangle_collection.py
│   │   │   ├── segment_collection.py
│   │   │   ├── triangle_collection.py
│   │   │   └── util.py
│   │   ├── colorbar.py
│   │   ├── cube.py
│   │   ├── ellipse.py
│   │   ├── filters
│   │   │   ├── base_filter.py
│   │   │   ├── clipper.py
│   │   │   ├── clipping_planes.py
│   │   │   ├── color.py
│   │   │   ├── __init__.py
│   │   │   ├── mesh.py
│   │   │   ├── picking.py
│   │   │   └── __pycache__
│   │   │   ├── base_filter.cpython-38.pyc
│   │   │   ├── clipper.cpython-38.pyc
│   │   │   ├── clipping_planes.cpython-38.pyc
│   │   │   ├── color.cpython-38.pyc
│   │   │   ├── __init__.cpython-38.pyc
│   │   │   ├── mesh.cpython-38.pyc
│   │   │   └── picking.cpython-38.pyc
│   │   ├── glsl
│   │   │   ├── antialiasing.py
│   │   │   ├── color.py
│   │   │   ├── __init__.py
│   │   │   └── __pycache__
│   │   │   ├── antialiasing.cpython-38.pyc
│   │   │   ├── color.cpython-38.pyc
│   │   │   └── __init__.cpython-38.pyc
│   │   ├── graphs
│   │   │   ├── graph.py
│   │   │   ├── __init__.py
│   │   │   ├── layouts
│   │   │   │   ├── circular.py
│   │   │   │   ├── force_directed.py
│   │   │   │   ├── __init__.py
│   │   │   │   ├── networkx_layout.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── circular.cpython-38.pyc
│   │   │   │   │   ├── force_directed.cpython-38.pyc
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── networkx_layout.cpython-38.pyc
│   │   │   │   │   └── random.cpython-38.pyc
│   │   │   │   └── random.py
│   │   │   ├── __pycache__
│   │   │   │   ├── graph.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   └── util.cpython-38.pyc
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_layouts.cpython-38.pyc
│   │   │   │   │   └── test_networkx_layout.cpython-38.pyc
│   │   │   │   ├── test_layouts.py
│   │   │   │   └── test_networkx_layout.py
│   │   │   └── util.py
│   │   ├── gridlines.py
│   │   ├── gridmesh.py
│   │   ├── histogram.py
│   │   ├── image.py
│   │   ├── infinite_line.py
│   │   ├── __init__.py
│   │   ├── isocurve.py
│   │   ├── isoline.py
│   │   ├── isosurface.py
│   │   ├── line
│   │   │   ├── arrow.py
│   │   │   ├── dash_atlas.py
│   │   │   ├── __init__.py
│   │   │   ├── line.py
│   │   │   └── __pycache__
│   │   │   ├── arrow.cpython-38.pyc
│   │   │   ├── dash_atlas.cpython-38.pyc
│   │   │   ├── __init__.cpython-38.pyc
│   │   │   └── line.cpython-38.pyc
│   │   ├── linear_region.py
│   │   ├── line_plot.py
│   │   ├── markers.py
│   │   ├── mesh_normals.py
│   │   ├── mesh.py
│   │   ├── plane.py
│   │   ├── polygon.py
│   │   ├── __pycache__
│   │   │   ├── axis.cpython-38.pyc
│   │   │   ├── border.cpython-38.pyc
│   │   │   ├── box.cpython-38.pyc
│   │   │   ├── colorbar.cpython-38.pyc
│   │   │   ├── cube.cpython-38.pyc
│   │   │   ├── ellipse.cpython-38.pyc
│   │   │   ├── gridlines.cpython-38.pyc
│   │   │   ├── gridmesh.cpython-38.pyc
│   │   │   ├── histogram.cpython-38.pyc
│   │   │   ├── image.cpython-38.pyc
│   │   │   ├── infinite_line.cpython-38.pyc
│   │   │   ├── __init__.cpython-38.pyc
│   │   │   ├── isocurve.cpython-38.pyc
│   │   │   ├── isoline.cpython-38.pyc
│   │   │   ├── isosurface.cpython-38.pyc
│   │   │   ├── linear_region.cpython-38.pyc
│   │   │   ├── line_plot.cpython-38.pyc
│   │   │   ├── markers.cpython-38.pyc
│   │   │   ├── mesh.cpython-38.pyc
│   │   │   ├── mesh_normals.cpython-38.pyc
│   │   │   ├── plane.cpython-38.pyc
│   │   │   ├── polygon.cpython-38.pyc
│   │   │   ├── rectangle.cpython-38.pyc
│   │   │   ├── regular_polygon.cpython-38.pyc
│   │   │   ├── _scalable_textures.cpython-38.pyc
│   │   │   ├── scrolling_lines.cpython-38.pyc
│   │   │   ├── spectrogram.cpython-38.pyc
│   │   │   ├── sphere.cpython-38.pyc
│   │   │   ├── surface_plot.cpython-38.pyc
│   │   │   ├── tube.cpython-38.pyc
│   │   │   ├── visual.cpython-38.pyc
│   │   │   ├── volume.cpython-38.pyc
│   │   │   ├── windbarb.cpython-38.pyc
│   │   │   └── xyz_axis.cpython-38.pyc
│   │   ├── rectangle.py
│   │   ├── regular_polygon.py
│   │   ├── _scalable_textures.py
│   │   ├── scrolling_lines.py
│   │   ├── shaders
│   │   │   ├── compiler.py
│   │   │   ├── expression.py
│   │   │   ├── function.py
│   │   │   ├── __init__.py
│   │   │   ├── multiprogram.py
│   │   │   ├── parsing.py
│   │   │   ├── program.py
│   │   │   ├── __pycache__
│   │   │   │   ├── compiler.cpython-38.pyc
│   │   │   │   ├── expression.cpython-38.pyc
│   │   │   │   ├── function.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── multiprogram.cpython-38.pyc
│   │   │   │   ├── parsing.cpython-38.pyc
│   │   │   │   ├── program.cpython-38.pyc
│   │   │   │   ├── shader_object.cpython-38.pyc
│   │   │   │   └── variable.cpython-38.pyc
│   │   │   ├── shader_object.py
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   ├── test_function.cpython-38.pyc
│   │   │   │   │   ├── test_multiprogram.cpython-38.pyc
│   │   │   │   │   └── test_parsing.cpython-38.pyc
│   │   │   │   ├── test_function.py
│   │   │   │   ├── test_multiprogram.py
│   │   │   │   └── test_parsing.py
│   │   │   └── variable.py
│   │   ├── spectrogram.py
│   │   ├── sphere.py
│   │   ├── surface_plot.py
│   │   ├── tests
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── test_arrows.cpython-38.pyc
│   │   │   │   ├── test_axis.cpython-38.pyc
│   │   │   │   ├── test_collections.cpython-38.pyc
│   │   │   │   ├── test_colorbar.cpython-38.pyc
│   │   │   │   ├── test_colormap.cpython-38.pyc
│   │   │   │   ├── test_ellipse.cpython-38.pyc
│   │   │   │   ├── test_histogram.cpython-38.pyc
│   │   │   │   ├── test_image.cpython-38.pyc
│   │   │   │   ├── test_infinite_line.cpython-38.pyc
│   │   │   │   ├── test_isosurface.cpython-38.pyc
│   │   │   │   ├── test_linear_region.cpython-38.pyc
│   │   │   │   ├── test_markers.cpython-38.pyc
│   │   │   │   ├── test_mesh.cpython-38.pyc
│   │   │   │   ├── test_mesh_normals.cpython-38.pyc
│   │   │   │   ├── test_polygon.cpython-38.pyc
│   │   │   │   ├── test_rectangle.cpython-38.pyc
│   │   │   │   ├── test_regular_polygon.cpython-38.pyc
│   │   │   │   ├── test_scalable_textures.cpython-38.pyc
│   │   │   │   ├── test_sdf.cpython-38.pyc
│   │   │   │   ├── test_spectrogram.cpython-38.pyc
│   │   │   │   ├── test_text.cpython-38.pyc
│   │   │   │   ├── test_volume.cpython-38.pyc
│   │   │   │   └── test_windbarb.cpython-38.pyc
│   │   │   ├── test_arrows.py
│   │   │   ├── test_axis.py
│   │   │   ├── test_collections.py
│   │   │   ├── test_colorbar.py
│   │   │   ├── test_colormap.py
│   │   │   ├── test_ellipse.py
│   │   │   ├── test_histogram.py
│   │   │   ├── test_image.py
│   │   │   ├── test_infinite_line.py
│   │   │   ├── test_isosurface.py
│   │   │   ├── test_linear_region.py
│   │   │   ├── test_markers.py
│   │   │   ├── test_mesh_normals.py
│   │   │   ├── test_mesh.py
│   │   │   ├── test_polygon.py
│   │   │   ├── test_rectangle.py
│   │   │   ├── test_regular_polygon.py
│   │   │   ├── test_scalable_textures.py
│   │   │   ├── test_sdf.py
│   │   │   ├── test_spectrogram.py
│   │   │   ├── test_text.py
│   │   │   ├── test_volume.py
│   │   │   └── test_windbarb.py
│   │   ├── text
│   │   │   ├── __init__.py
│   │   │   ├── __pycache__
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── _sdf_gpu.cpython-38.pyc
│   │   │   │   └── text.cpython-38.pyc
│   │   │   ├── _sdf_cpu.cpython-38-x86_64-linux-gnu.so
│   │   │   ├── _sdf_cpu.pyx
│   │   │   ├── _sdf_gpu.py
│   │   │   └── text.py
│   │   ├── transforms
│   │   │   ├── base_transform.py
│   │   │   ├── chain.py
│   │   │   ├── __init__.py
│   │   │   ├── interactive.py
│   │   │   ├── linear.py
│   │   │   ├── nonlinear.py
│   │   │   ├── __pycache__
│   │   │   │   ├── base_transform.cpython-38.pyc
│   │   │   │   ├── chain.cpython-38.pyc
│   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   ├── interactive.cpython-38.pyc
│   │   │   │   ├── linear.cpython-38.pyc
│   │   │   │   ├── nonlinear.cpython-38.pyc
│   │   │   │   ├── transform_system.cpython-38.pyc
│   │   │   │   └── _util.cpython-38.pyc
│   │   │   ├── tests
│   │   │   │   ├── __init__.py
│   │   │   │   ├── __pycache__
│   │   │   │   │   ├── __init__.cpython-38.pyc
│   │   │   │   │   └── test_transforms.cpython-38.pyc
│   │   │   │   └── test_transforms.py
│   │   │   ├── transform_system.py
│   │   │   └── _util.py
│   │   ├── tube.py
│   │   ├── visual.py
│   │   ├── volume.py
│   │   ├── windbarb.py
│   │   └── xyz_axis.py
│   └── vispy-0.9.1.dist-info
│   ├── direct_url.json
│   ├── INSTALLER
│   ├── LICENSE.txt
│   ├── METADATA
│   ├── RECORD
│   ├── REQUESTED
│   ├── top_level.txt
│   └── WHEEL
└── nix-support
└── propagated-build-inputs
123 directories, 891 files
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment