
#include <librapid/librapid.hpp>
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>
#include <pybind11/functional.h>
#include <functional>
#include <string>

// Just remove these. They're pointless
#ifdef min
#undef min
#endif

#ifdef max
#undef max
#endif

namespace lrc = librapid;
namespace py = pybind11;

void init_ArrayMPQ(py::module &module) {
py::class_<librapid::ArrayMPQ>(module, "ArrayMPQ")
	.def(py::init<>())
	.def(py::init<librapid::Extent>())
	.def(py::init<const librapid::ArrayMPQ &>())
	.def(py::init<librapid::internal::traits<librapid::ArrayMPQ>::Scalar>())
	.def("copy", [](const librapid::ArrayMPQ & this_) { return this_.copy(); })
	.def("__getitem__", [](const librapid::ArrayMPQ & this_, int64_t index) { return this_[index]; }, py::arg("index"))
	.def("__setitem__", [](librapid::ArrayMPQ & this_, int64_t index, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val) { this_[index] = val; }, py::arg("index"), py::arg("val"))
	.def("__setitem__", [](librapid::ArrayMPQ & this_, int64_t index, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val) { this_[index] = val; }, py::arg("index"), py::arg("val"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0) { return this_(index0).get(); }, py::arg("index0"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0) { return this_(index0).get(); }, py::arg("index0"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0) { this_(index0) = val; }, py::arg("val"), py::arg("index0"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1) { return this_(index0, index1).get(); }, py::arg("index0"), py::arg("index1"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1) { return this_(index0, index1).get(); }, py::arg("index0"), py::arg("index1"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1) { this_(index0, index1) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2) { return this_(index0, index1, index2).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2) { return this_(index0, index1, index2).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2) { this_(index0, index1, index2) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3) { return this_(index0, index1, index2, index3).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3) { return this_(index0, index1, index2, index3).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3) { this_(index0, index1, index2, index3) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4) { return this_(index0, index1, index2, index3, index4).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4) { return this_(index0, index1, index2, index3, index4).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4) { this_(index0, index1, index2, index3, index4) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5) { return this_(index0, index1, index2, index3, index4, index5).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5) { return this_(index0, index1, index2, index3, index4, index5).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5) { this_(index0, index1, index2, index3, index4, index5) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6) { return this_(index0, index1, index2, index3, index4, index5, index6).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6) { return this_(index0, index1, index2, index3, index4, index5, index6).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6) { this_(index0, index1, index2, index3, index4, index5, index6) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7) { return this_(index0, index1, index2, index3, index4, index5, index6, index7).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7) { return this_(index0, index1, index2, index3, index4, index5, index6, index7).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7) { this_(index0, index1, index2, index3, index4, index5, index6, index7) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28, int64_t index29) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28, index29).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"), py::arg("index29"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28, int64_t index29) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28, index29).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"), py::arg("index29"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28, int64_t index29) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28, index29) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"), py::arg("index29"))
	.def("__call__", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28, int64_t index29, int64_t index30) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28, index29, index30).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"), py::arg("index29"), py::arg("index30"))
	.def("get", [](const librapid::ArrayMPQ & this_, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28, int64_t index29, int64_t index30) { return this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28, index29, index30).get(); }, py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"), py::arg("index29"), py::arg("index30"))
	.def("set", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar val, int64_t index0, int64_t index1, int64_t index2, int64_t index3, int64_t index4, int64_t index5, int64_t index6, int64_t index7, int64_t index8, int64_t index9, int64_t index10, int64_t index11, int64_t index12, int64_t index13, int64_t index14, int64_t index15, int64_t index16, int64_t index17, int64_t index18, int64_t index19, int64_t index20, int64_t index21, int64_t index22, int64_t index23, int64_t index24, int64_t index25, int64_t index26, int64_t index27, int64_t index28, int64_t index29, int64_t index30) { this_(index0, index1, index2, index3, index4, index5, index6, index7, index8, index9, index10, index11, index12, index13, index14, index15, index16, index17, index18, index19, index20, index21, index22, index23, index24, index25, index26, index27, index28, index29, index30) = val; }, py::arg("val"), py::arg("index0"), py::arg("index1"), py::arg("index2"), py::arg("index3"), py::arg("index4"), py::arg("index5"), py::arg("index6"), py::arg("index7"), py::arg("index8"), py::arg("index9"), py::arg("index10"), py::arg("index11"), py::arg("index12"), py::arg("index13"), py::arg("index14"), py::arg("index15"), py::arg("index16"), py::arg("index17"), py::arg("index18"), py::arg("index19"), py::arg("index20"), py::arg("index21"), py::arg("index22"), py::arg("index23"), py::arg("index24"), py::arg("index25"), py::arg("index26"), py::arg("index27"), py::arg("index28"), py::arg("index29"), py::arg("index30"))
	.def("move_CPU", [](const librapid::ArrayMPQ & this_) { return this_.move<librapid::device::CPU>(); })
	#if defined(LIBRAPID_HAS_CUDA)
	.def("move_GPU", [](const librapid::ArrayMPQ & this_) { return this_.move<librapid::device::GPU>(); })
	#endif // LIBRAPID_HAS_CUDA
	.def("cast_ArrayBG", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayBG>::Scalar>(); })
	.def("cast_ArrayCG", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayCG>::Scalar>(); })
	.def("cast_ArrayF16G", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayF16G>::Scalar>(); })
	.def("cast_ArrayF32G", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayF32G>::Scalar>(); })
	.def("cast_ArrayF64G", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayF64G>::Scalar>(); })
	.def("cast_ArrayI16G", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayI16G>::Scalar>(); })
	.def("cast_ArrayI32G", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayI32G>::Scalar>(); })
	.def("cast_ArrayI64G", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayI64G>::Scalar>(); })
	.def("cast_ArrayB", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayB>::Scalar>(); })
	.def("cast_ArrayC", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayC>::Scalar>(); })
	.def("cast_ArrayF16", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayF16>::Scalar>(); })
	.def("cast_ArrayF32", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayF32>::Scalar>(); })
	.def("cast_ArrayF64", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayF64>::Scalar>(); })
	.def("cast_ArrayI16", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayI16>::Scalar>(); })
	.def("cast_ArrayI32", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayI32>::Scalar>(); })
	.def("cast_ArrayI64", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayI64>::Scalar>(); })
	.def("cast_ArrayMPZ", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayMPZ>::Scalar>(); })
	.def("cast_ArrayMPQ", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar>(); })
	.def("cast_ArrayMPFR", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayMPFR>::Scalar>(); })
	.def("cast_ArrayCF32", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayCF32>::Scalar>(); })
	.def("cast_ArrayCF64", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayCF64>::Scalar>(); })
	.def("cast_ArrayCMPFR", [](const librapid::ArrayMPQ & this_) { return this_.cast<typename librapid::internal::traits<librapid::ArrayCMPFR>::Scalar>(); })
	.def("__add__", [](const librapid::ArrayMPQ & this_, const librapid::ArrayMPQ & other) { return this_ + other; }, py::arg("other"))
	.def("__add__", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar other) { return this_ + other; }, py::arg("other"))
	.def("__sub__", [](const librapid::ArrayMPQ & this_, const librapid::ArrayMPQ & other) { return this_ - other; }, py::arg("other"))
	.def("__sub__", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar other) { return this_ - other; }, py::arg("other"))
	.def("__mul__", [](const librapid::ArrayMPQ & this_, const librapid::ArrayMPQ & other) { return this_ * other; }, py::arg("other"))
	.def("__mul__", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar other) { return this_ * other; }, py::arg("other"))
	.def("__div__", [](const librapid::ArrayMPQ & this_, const librapid::ArrayMPQ & other) { return this_ / other; }, py::arg("other"))
	.def("__div__", [](const librapid::ArrayMPQ & this_, typename librapid::internal::traits<librapid::ArrayMPQ>::Scalar other) { return this_ / other; }, py::arg("other"))
	.def("__neg__", [](const librapid::ArrayMPQ & this_) { return -this_; })
	.def("transpose", [](librapid::ArrayMPQ & this_, const librapid::Extent & order) { this_.transpose(order); }, py::arg("order") = librapid::Extent({}))
	.def("transposed", [](const librapid::ArrayMPQ & this_, const librapid::Extent & order) { return this_.transposed(order); }, py::arg("order") = librapid::Extent({}))
	.def("dot", [](const librapid::ArrayMPQ & this_, const librapid::ArrayMPQ & other) { return this_.dot(other); }, py::arg("other"))
	.def("str", [](const librapid::ArrayMPQ & this_, const std::string & format, const std::string & delim, int64_t stripWidth, int64_t beforePoint, int64_t afterPoint, int64_t depth) { return this_.str(format, delim, stripWidth, beforePoint, afterPoint, depth); }, py::arg("format") = std::string("{}"), py::arg("delim") = std::string(" "), py::arg("stripWidth") = int64_t(-1), py::arg("beforePoint") = int64_t(-1), py::arg("afterPoint") = int64_t(-1), py::arg("depth") = int64_t(0))
	.def("__str__", [](const librapid::ArrayMPQ & this_) { return this_.str(); })
	.def("__repr__", [](const librapid::ArrayMPQ & this_) { return "<librapid::ArrayMPQ\n" + this_.str("{}", ",") + "\n>"; })
	.def("isScalar", [](const librapid::ArrayMPQ & this_) { return this_.isScalar(); })
	.def("extent", [](const librapid::ArrayMPQ & this_) { return this_.extent(); });


module.def("add", [](const librapid::ArrayMPQ & lhs, const librapid::ArrayMPQ & rhs, librapid::ArrayMPQ & dst) { librapid::add(lhs, rhs, dst); }, py::arg("lhs"), py::arg("rhs"), py::arg("dst"));
module.def("sub", [](const librapid::ArrayMPQ & lhs, const librapid::ArrayMPQ & rhs, librapid::ArrayMPQ & dst) { librapid::sub(lhs, rhs, dst); }, py::arg("lhs"), py::arg("rhs"), py::arg("dst"));
module.def("mul", [](const librapid::ArrayMPQ & lhs, const librapid::ArrayMPQ & rhs, librapid::ArrayMPQ & dst) { librapid::mul(lhs, rhs, dst); }, py::arg("lhs"), py::arg("rhs"), py::arg("dst"));
module.def("div", [](const librapid::ArrayMPQ & lhs, const librapid::ArrayMPQ & rhs, librapid::ArrayMPQ & dst) { librapid::div(lhs, rhs, dst); }, py::arg("lhs"), py::arg("rhs"), py::arg("dst"));

}