pytensor 3.0.1__tar.gz → 3.0.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pytensor-3.0.1/pytensor.egg-info → pytensor-3.0.2}/PKG-INFO +1 -1
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/_version.py +3 -3
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/special.py +3 -0
- {pytensor-3.0.1 → pytensor-3.0.2/pytensor.egg-info}/PKG-INFO +1 -1
- {pytensor-3.0.1 → pytensor-3.0.2}/LICENSE.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/MANIFEST.in +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/README.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/.templates/PLACEHOLDER +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/.templates/layout.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/.templates/nb-badges.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/.templates/rendered_citation.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/LICENSE.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/README.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/_drafts/benchmark_mlx_v_jax_corrected.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/_thumbnails/autodiff/vector_jacobian_product.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/acknowledgement.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/bcast.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/bcast.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/blog.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/conf.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/core_development_guide.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/css.inc +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/dev_start_guide.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/environment.yml +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/apply.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/apply.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/apply2.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/creating_a_c_op.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/creating_a_numba_jax_op.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/creating_an_op.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/ctype.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/extending_faq.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/extending_pytensor_solution_1.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/graph_rewriting.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/graphstructures.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/inplace.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/op.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/other_ops.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/pics/symbolic_graph_opt.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/pics/symbolic_graph_unopt.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/pipeline.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/scan.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/tips.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/type.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/unittest.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/extending/using_params.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/faq.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/applications/normalizing_flows_in_pytensor.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/autodiff/vector_jacobian_product.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/introduction/pytensor_intro.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/optimize/root.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/page_footer.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/rewrites/graph_rewrites.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/scan/scan_tutorial.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/generate_dtype_tensor_table.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/glossary.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/Elman_srnn.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/PyTensor.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/PyTensor_RGB.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/PyTensor_logo.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/binder.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/blocksparse.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/colab.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/github.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/lstm.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/lstm_memorycell.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/talk2010.gif +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/images/talk2010.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/install.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/internal/how_to_release.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/internal/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/internal/metadocumentation.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/introduction.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/debugmode.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/function.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/io.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/mode.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/nanguardmode.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/opfromgraph.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/ops.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/profilemode.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/compile/shared.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/config.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/d3viz/css/d3-context-menu.css +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/d3viz/css/d3viz.css +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/d3viz/js/d3-context-menu.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/d3viz/js/d3.v3.min.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/d3viz/js/d3viz.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/d3viz/js/dagre-d3.min.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/d3viz/js/graphlib-dot.min.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/mlp.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/mlp.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/mlp2.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/mlp2.pdf +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/mlp2.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/ofg.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/examples/ofg2.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/index.ipynb +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/index_files/index_10_0.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/index_files/index_11_0.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/index_files/index_24_0.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/d3viz/index_files/index_25_0.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/features.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/fgraph.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/graph.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/op.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/replace.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/type.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/graph/utils.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/misc/pkl_utils.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/printing.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/scalar/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/scan.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/sparse/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/sparse/sandbox.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/basic.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/basic_opt.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/bcast.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/bcast.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/elemwise.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/extra_ops.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/fft.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/functional.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/io.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/linalg.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/math_opt.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/nlinalg.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/optimize.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/plot_fft.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/random.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/slinalg.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/tensor/utils.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/typed_list.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/xtensor/index.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/xtensor/linalg.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/xtensor/math.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/xtensor/module_functions.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/xtensor/random.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/xtensor/signal.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/library/xtensor/type.md +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/links.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/optimizations.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/pylintrc +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/robots.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/troubleshooting.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/adding.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/adding_solution_1.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/aliasing.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/apply.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/apply.svg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/bcast.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/broadcasting.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/conditions.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/debug_faq.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/dlogistic.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/examples.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/faq_tutorial.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/gradients.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/index.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/loading_and_saving.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/logistic.gp +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/logistic.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/loop.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/loop_solution_1.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/modes.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/modes_solution_1.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/multi_cores.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/nan_tutorial.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/pics/d3viz.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/pics/logreg_pydotprint_predict.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/pics/logreg_pydotprint_prediction.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/pics/logreg_pydotprint_train.png +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/printing_drawing.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/prng.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/profiling.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/profiling_example.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/profiling_example_out.prof +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/shape_info.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/sparse.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/tutorial/symbolic_graphs.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/doc/user_guide.rst +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pyproject.toml +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/_sparse_lazy.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/bin/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/bin/pytensor_cache.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/breakpoint.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/aliasing.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/builders.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/compiledir.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/compilelock.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/debug/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/debug/debugmode.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/debug/dump.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/debug/monitormode.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/debug/nanguardmode.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/debug/profiling.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/executor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/io.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/maker.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/mode.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/rebuild.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/compile/sharedvalue.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/configdefaults.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/configparser.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/css/d3-context-menu.css +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/css/d3viz.css +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/d3viz.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/formatting.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/html/template.html +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/js/d3-context-menu.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/js/d3.v3.min.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/js/d3viz.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/js/dagre-d3.min.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/d3viz/js/graphlib-dot.min.js +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/gradient.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/destroyhandler.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/features.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/fg.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/null_type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/op.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/replace.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/rewriting/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/rewriting/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/rewriting/db.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/rewriting/kanren.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/rewriting/unify.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/rewriting/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/traversal.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/graph/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/ifelse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/ipython.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/c_code/lazylinker_c.c +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/c_code/pytensor_mod_helper.h +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/cmodule.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/cutils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/cvm.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/exceptions.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/interface.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/lazylinker_c.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/op.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/params_type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/c/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/blas.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/blockwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/einsum.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/elemwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/extra_ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/linalg/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/linalg/constructors.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/linalg/decomposition.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/linalg/inverse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/linalg/products.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/linalg/solvers.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/linalg/summary.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/pad.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/random.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/scalar.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/scan.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/signal/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/signal/conv.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/sort.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/sparse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/subtensor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/dispatch/tensor_basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/linker.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/jax/ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/blas.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/blockwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/einsum.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/elemwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/extra_ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/linalg/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/linalg/decomposition.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/linalg/inverse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/linalg/products.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/linalg/solvers.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/linalg/summary.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/pad.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/scalar.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/signal/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/signal/conv.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/sort.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/subtensor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/dispatch/tensor_basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/mlx/linker.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/cache.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/blockwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/compile_ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/cython_support.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/elemwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/extra_ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/_LAPACK.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/constructors.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/cholesky.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/dispatch.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/eigen.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/lu.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/lu_factor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/qr.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/qz.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/decomposition/schur.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/inverse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/cholesky.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/dispatch.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/general.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/hermitian.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/linear_control.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/lu_solve.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/posdef.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/symmetric.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/triangular.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/tridiagonal.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/solvers/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/summary.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/linalg/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/random.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/scalar.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/scan.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/signal/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/signal/conv.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/sort.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/sparse/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/sparse/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/sparse/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/sparse/variable.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/string_codegen.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/subtensor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/tensor_basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/typed_list.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/dispatch/vectorize_codegen.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/numba/linker.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/blas.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/blockwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/elemwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/extra_ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/linalg/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/linalg/decomposition.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/linalg/inverse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/linalg/products.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/linalg/summary.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/scalar.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/sort.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/dispatch/subtensor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/pytorch/linker.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/link/vm.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/check_blas.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/check_blas_many.sh +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/check_duplicate_key.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/elemwise_openmp_speedup.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/elemwise_time_test.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/frozendict.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/may_share_memory.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/ordered_set.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/misc/pkl_utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/npy_2_compat.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/printing.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/py.typed +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/raise_op.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/c_code/Faddeeva.cc +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/c_code/Faddeeva.hh +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/c_code/gamma.c +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/c_code/incbet.c +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/loop.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scalar/sharedvar.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/checkpoints.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/op.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/rewriting.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/scan_perform.pyx +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/scan_perform_ext.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/scan/views.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/linalg.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/rewriting.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/sharedvar.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/sparse/variable.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/blas.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/blas_c.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/blas_headers.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/blockwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/c_code/alt_blas_common.h +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/c_code/alt_blas_template.c +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/c_code/dimshuffle.c +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/einsum.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/elemwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/elemwise_cgen.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/exceptions.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/extra_ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/fft.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/fourier.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/functional.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/interpolate.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/_lazy.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/constructors.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/decomposition/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/decomposition/cholesky.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/decomposition/eigen.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/decomposition/lu.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/decomposition/qr.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/decomposition/schur.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/decomposition/svd.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/dtype_utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/inverse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/products.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/core.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/general.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/linear_control.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/lstsq.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/psd.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/triangular.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/solvers/tridiagonal.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/linalg/summary.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/nlinalg.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/optimize.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/pad.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/op.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/rewriting/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/rewriting/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/rewriting/jax.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/rewriting/numba.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/random/variable.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/reshape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/blas.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/blas_c.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/blockwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/einsum.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/elemwise.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/extra_ops.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/jax.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/linalg/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/linalg/decomposition.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/linalg/inverse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/linalg/products.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/linalg/solvers.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/linalg/summary.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/linalg/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/numba.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/ofg.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/optimize.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/reshape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/special.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/subtensor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/subtensor_lift.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/rewriting/uncanonicalize.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/sharedvar.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/signal/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/signal/conv.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/slinalg.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/sort.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/subtensor.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/symbolic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/type_other.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/var.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/variable.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/tensor/xlogx.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/typed_list/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/typed_list/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/typed_list/rewriting.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/typed_list/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/indexing.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/linalg.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/random/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/random/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/random/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/random/variable.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/reduction.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/__init__.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/indexing.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/math.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/reduction.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/utils.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/rewriting/vectorization.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/shape.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/signal.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/type.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor/xtensor/vectorization.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor.egg-info/SOURCES.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor.egg-info/dependency_links.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor.egg-info/entry_points.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor.egg-info/requires.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/pytensor.egg-info/top_level.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/scripts/mypy-failing.txt +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/scripts/slowest_tests/update-slowest-times-issue.sh +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/setup.cfg +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/setup.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/link/c/c_code/test_cenum.h +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/link/c/c_code/test_quadratic_function.c +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_basic.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_breakpoint.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_config.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_gradient.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_ifelse.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_printing.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_raise_op.py +0 -0
- {pytensor-3.0.1 → pytensor-3.0.2}/tests/test_rop.py +0 -0
|
@@ -8,11 +8,11 @@ import json
|
|
|
8
8
|
|
|
9
9
|
version_json = '''
|
|
10
10
|
{
|
|
11
|
-
"date": "2026-05-
|
|
11
|
+
"date": "2026-05-12T11:06:13+0200",
|
|
12
12
|
"dirty": false,
|
|
13
13
|
"error": null,
|
|
14
|
-
"full-revisionid": "
|
|
15
|
-
"version": "3.0.
|
|
14
|
+
"full-revisionid": "a3e786e2a595d6b686b43686cc6587794b0c286d",
|
|
15
|
+
"version": "3.0.2"
|
|
16
16
|
}
|
|
17
17
|
''' # END VERSION_JSON
|
|
18
18
|
|
|
@@ -2,6 +2,7 @@ from numpy.lib.array_utils import normalize_axis_tuple
|
|
|
2
2
|
|
|
3
3
|
from pytensor.gradient import DisconnectedType, disconnected_type
|
|
4
4
|
from pytensor.graph.replace import _vectorize_node
|
|
5
|
+
from pytensor.tensor import as_tensor_variable
|
|
5
6
|
from pytensor.tensor.elemwise import get_normalized_batch_axes
|
|
6
7
|
from pytensor.tensor.math import (
|
|
7
8
|
eq,
|
|
@@ -53,6 +54,7 @@ class Softmax(TensorSymbolicOp):
|
|
|
53
54
|
|
|
54
55
|
|
|
55
56
|
def softmax(c, axis=None):
|
|
57
|
+
c = as_tensor_variable(c)
|
|
56
58
|
if axis is not None:
|
|
57
59
|
axis = normalize_axis_tuple(axis, c.type.ndim)
|
|
58
60
|
return Softmax(axis=axis)(c)
|
|
@@ -88,6 +90,7 @@ class LogSoftmax(TensorSymbolicOp):
|
|
|
88
90
|
|
|
89
91
|
|
|
90
92
|
def log_softmax(c, axis=None):
|
|
93
|
+
c = as_tensor_variable(c)
|
|
91
94
|
if axis is not None:
|
|
92
95
|
axis = normalize_axis_tuple(axis, c.type.ndim)
|
|
93
96
|
return LogSoftmax(axis=axis)(c)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pytensor-3.0.1 → pytensor-3.0.2}/doc/gallery/applications/normalizing_flows_in_pytensor.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|