diff --git a/CMakeLists.txt b/CMakeLists.txt index 1217634c..e5f83e54 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,10 +7,11 @@ option(VAMP_FORCE_CLANG "Force the use of Clang." OFF) option(VAMP_BUILD_PYTHON_BINDINGS "Build VAMP Python bindings" ON) option(VAMP_INSTALL_CPP_LIBRARY "Install VAMP C++ library (disable for Python wheel builds)" ON) -option(VAMP_BUILD_CPP_DEMO "Build VAMP C++ Demo Scripts" OFF) +option(VAMP_BUILD_CPP_DEMO "Build VAMP C++ Demo Scripts" ON) option(VAMP_BUILD_OMPL_DEMO "Build VAMP C++ OMPL Integration Demo Scripts" OFF) option(VAMP_OMPL_PATH "Search Path for OMPL Installation - Only Needed for Demo Script" "") + if(VAMP_FORCE_CLANG) find_program(CLANG "clang") find_program(CLANGPP "clang++") diff --git a/cmake/Python.cmake b/cmake/Python.cmake index 57ab5bbe..fa6fef72 100644 --- a/cmake/Python.cmake +++ b/cmake/Python.cmake @@ -21,6 +21,7 @@ if(VAMP_BUILD_PYTHON_BINDINGS) panda fetch baxter + bimanualpanda ) list(APPEND VAMP_ROBOT_STRUCTS @@ -29,6 +30,7 @@ if(VAMP_BUILD_PYTHON_BINDINGS) Panda Fetch Baxter + BimanualPanda ) endif() diff --git a/pyproject.toml b/pyproject.toml index f24e6cde..ffab9476 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,5 +34,5 @@ cmake.build-type = "Release" [tool.scikit-build.cmake.define] VAMP_LTO = "OFF" -VAMP_ROBOT_MODULES="sphere;ur5;panda;fetch;baxter" -VAMP_ROBOT_STRUCTS="Sphere;UR5;Panda;Fetch;Baxter" +VAMP_ROBOT_MODULES="sphere;ur5;panda;fetch;baxter;bimanualpanda" +VAMP_ROBOT_STRUCTS="Sphere;UR5;Panda;Fetch;Baxter;BimanualPanda" diff --git a/resources/panda/bipanda_spherized.urdf b/resources/panda/bipanda_spherized.urdf new file mode 100644 index 00000000..5e12fa13 --- /dev/null +++ b/resources/panda/bipanda_spherized.urdf @@ -0,0 +1,1248 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/scripts/bimanual_franka.py b/scripts/bimanual_franka.py new file mode 100644 index 00000000..73138ccd --- /dev/null +++ b/scripts/bimanual_franka.py @@ -0,0 +1,106 @@ +from pathlib import Path +import numpy as np + +import vamp +# from vamp import pybullet_interface as vpb + +from fire import Fire + +# Starting configuration +a = [0., -0.785, 0., -2.356, 0., 1.571, 0.785, 0., -0.785, 0., -2.356, 0., 1.571, 0.785] + +# Goal configuration +b = [-2.35, 1., 0., -0.8, 0, 2.5, 0.785, 2.35, 1., 0., -0.8, 0, 2.5, 0.785] + +# Problem specification: a list of sphere centers +problem = [ + # [0.55, 0, 0.25], + # [0.35, 0.35, 0.25], + # [0, 0.55, 0.25], + # [-0.55, 0, 0.25], + # [-0.35, -0.35, 0.25], + # [0, -0.55, 0.25], + # [0.35, -0.35, 0.25], + # [0.35, 0.35, 0.8], + # [0, 0.55, 0.8], + # [-0.35, 0.35, 0.8], + # [-0.55, 0, 0.8], + # [-0.35, -0.35, 0.8], + # [0, -0.55, 0.8], + # [0.35, -0.35, 0.8], + ] + + +def main( + obstacle_radius: float = 0.2, + attachment_radius: float = 0.07, + attachment_offset: float = 0.14, + planner: str = "rrtc", + **kwargs, + ): + + (vamp_module, planner_func, plan_settings, + simp_settings) = vamp.configure_robot_and_planner_with_kwargs("bimanualpanda", planner, **kwargs) + + # Create an attachment offset on the Z-axis from the end-effector frame + tf = np.identity(4) + tf[:3, 3] = np.array([0, 0, attachment_offset]) + attachment = vamp.Attachment(tf) + + # Add a single sphere to the attachment - spheres are added in the attachment's local frame + attachment.add_spheres([vamp.Sphere([0, 0, 0], attachment_radius)]) + + robot_dir = Path(__file__).parents[1] / 'resources' / 'panda' + # sim = vpb.PyBulletSimulator(str(robot_dir / "panda_spherized.urdf"), vamp_module.joint_names(), True) + + e = vamp.Environment() + for sphere in problem: + e.add_sphere(vamp.Sphere(sphere, obstacle_radius)) + # sim.add_sphere(obstacle_radius, sphere) + + # Add the attchment to the VAMP environment + e.attach(attachment, 0) + + # Add attachment sphere to visualization + # attachment_sphere = sim.add_sphere(attachment_radius, [0, 0, 0]) + + # Callback to update sphere's location in PyBullet visualization + def callback(configuration): + attachment.set_ee_pose(vamp_module.eefk(configuration)) + sphere = attachment.posed_spheres[0] + + # sim.update_object_position(attachment_sphere, sphere.position) + + # Plan and display + sampler = vamp_module.halton() + result = planner_func(a, b, e, plan_settings, sampler) + simple = vamp_module.simplify(result.path, e, simp_settings, sampler) + simple.path.interpolate_to_resolution(vamp.panda.resolution()) + print(simple.path.numpy().shape) + + + e.detach(0) + + # Add attachment sphere to visualization + # attachment_sphere = sim.add_sphere(attachment_radius, [0, 0, 0]) + + # Callback to update sphere's location in PyBullet visualization + def callback(configuration): + attachment.set_ee_pose(vamp_module.eefk(configuration)) + sphere = attachment.posed_spheres[0] + + # sim.update_object_position(attachment_sphere, sphere.position) + + # Plan and display + sampler = vamp_module.halton() + result = planner_func(a, b, e, plan_settings, sampler) + simple = vamp_module.simplify(result.path, e, simp_settings, sampler) + simple.path.interpolate_to_resolution(vamp.panda.resolution()) + print(simple.path.numpy().shape) + + + # sim.animate(simple.path, callback) + + +if __name__ == "__main__": + Fire(main) diff --git a/scripts/viser_utils.py b/scripts/viser_utils.py new file mode 100644 index 00000000..8a201602 --- /dev/null +++ b/scripts/viser_utils.py @@ -0,0 +1,80 @@ +from viser.extras import ViserUrdf +import viser +import yourdfpy +from typing import Sequence, Union + + +def setup_viser_with_robot(robot_dir, robot_urdf_name): + server = viser.ViserServer() + # change the robot here + urdf = yourdfpy.URDF.load(str(robot_dir / robot_urdf_name)) + robot = ViserUrdf( + server, + urdf, + load_meshes=True, + load_collision_meshes=False, + root_node_name="/robot", + ) + + return server, robot + + +def add_spheres( + server: viser.ViserServer, + sphere_positions: Sequence, + sphere_radii: Sequence, + colors: Union[Sequence[int], Sequence[Sequence[int]]] = [], + prefix: str = "my_sphere", +): + """ + Add spheres to the env/ + Sphere positions are (N,3) and sphere radii are (N) + """ + sphere_handles = [None] * len(sphere_positions) + if len(colors) == 0: + colors = [[255, 0, 0]] * len(sphere_positions) + elif len(colors) == 1: + colors = colors * len(sphere_positions) + else: + assert len(colors) == len(sphere_positions) + for i, (sphere_pos, sphere_rad) in enumerate(zip(sphere_positions, sphere_radii)): + sphere_handles[i] = server.scene.add_icosphere( + name=f"{prefix}_{i}", + radius=sphere_rad, + position=tuple(sphere_pos[:3]), + color=tuple(colors[i]), + ) + return sphere_handles + + +def add_trajectory(server, waypoints, robot, attachment_handles, attachment_positions): + """ + Adds a slider to step through waypoints of a trajectory also allows for auto step through + using play/pause button + + Args: + server (ViserServer): ViserServer instance + waypoints (numpy.array): A 2D numpy array (shape: (N,7)) with N waypoints of joint poses + robot (ViserUrdf): ViserUrdf instance of the robot + + attachment_handles (numpy.array) - this is a P element list of attachment handles, spheres here + attachment_positions (numpy.array) - this is a (N, P, 3) array of the position of each attachment handle at each waypoint pos. + + Returns: + return_type: None. + """ + if len(waypoints) < 1: + return + assert len(attachment_handles) == len(attachment_positions[0]) + traj_slider = server.gui.add_slider( + "Current Waypoint", min=0, max=len(waypoints) - 1, step=1, initial_value=0 + ) + + @traj_slider.on_update + def update_robot_pose(event): + waypoint_idx = int(event.target.value) + joint_config = waypoints[waypoint_idx] + robot.update_cfg(joint_config) + + for attach_idx, attachment_handle in enumerate(attachment_handles): + attachment_handle.position = attachment_positions[waypoint_idx][attach_idx] diff --git a/scripts/visualize_viser.py b/scripts/visualize_viser.py new file mode 100644 index 00000000..53629938 --- /dev/null +++ b/scripts/visualize_viser.py @@ -0,0 +1,115 @@ +import numpy as np +from viser import transforms as tf +import os +from viser_utils import setup_viser_with_robot, add_spheres, add_trajectory +from pathlib import Path + +import vamp +from fire import Fire + + +# Starting configuration +a = [0.0, -0.785, 0.0, -2.356, 0.0, 1.571, 0.785, 2.35, 1.0, 0.0, -0.8, 0, 2.5, 0.785] + +# Goal configuration +b = [-2.35, 1.0, 0.0, -0.8, 0, 2.5, 0.785, 0.0, -0.785, 0.0, -2.356, 0.0, 1.571, 0.785] + + +# Problem specification: a list of sphere centers +problem = [ + [0.55, 0, 0.15], + [0.35, 0.45, 0.15], + [0, 0.65, 0.15], + [-0.55, 0, 0.15], + [-0.35, -0.55, 0.15], + [0, -0.65, 0.15], + [0.35, -0.55, 0.15], + [0.35, 0.6, 0.8], + [0, 0.6, 0.8], + [-0.35, 0.5, 0.8], + [-0.55, 0, 0.8], + [-0.35, -0.5, 0.8], + [0, -0.65, 0.8], + [0.35, -0.65, 0.8], +] + + +def main( + obstacle_radius: float = 0.2, + attachment_radius: float = 0.07, + attachment_offset: float = 0.04, + planner: str = "rrtc", + **kwargs, +): + + (vamp_module, planner_func, plan_settings, simp_settings) = ( + vamp.configure_robot_and_planner_with_kwargs("bimanualpanda", planner, **kwargs) + ) + + # Create an attachment offset on the Z-axis from the end-effector frame + tf = np.identity(4) + tf[:3, 3] = np.array([0, 0, attachment_offset]) + attachment = vamp.Attachment(tf) + + attachment2 = vamp.Attachment(tf) + + # Add a single sphere to the attachment - spheres are added in the attachment's local frame + attachment.add_spheres([vamp.Sphere([0, 0, 0], attachment_radius)]) + attachment2.add_spheres([vamp.Sphere([0, 0, 0], attachment_radius)]) + + robot_dir = Path(__file__).parents[1] / "resources" / "panda" + + server, robot = setup_viser_with_robot(robot_dir, "bipanda_spherized.urdf") + robot.update_cfg(a) + + e = vamp.Environment() + for sphere in problem: + e.add_sphere(vamp.Sphere(sphere, obstacle_radius)) + + _problem_sphere_handles = add_spheres( + server, np.array(problem), np.array([obstacle_radius] * len(problem)) + ) + + # Add the attchment to the VAMP environment + e.attach(attachment, 0) + e.attach(attachment2, 1) + + # Add attachment sphere to visualization + attachment_sph = add_spheres( + server, + np.zeros((2, 3)), + np.array([attachment_radius] * 2), + colors=[[0, 255, 0], [0, 0, 255]], + ) + + # Update attachment sphere positions corresponding to the waypoints. + # this could also be made into a callable that can be called during trajectory viz + def get_attachment_pos(configuration): + for idx, attach in enumerate([attachment, attachment2]): + attach.set_ee_pose(vamp_module.eefk(configuration)[idx]) + return np.array( + [ + attachment.posed_spheres[0].position, + attachment2.posed_spheres[0].position, + ] + ) + + # Plan and display + sampler = vamp_module.halton() + result = planner_func(a, b, e, plan_settings, sampler) + simple = vamp_module.simplify(result.path, e, simp_settings, sampler) + simple.path.interpolate_to_resolution(vamp.panda.resolution()) + + attachment_positions = [get_attachment_pos(pos) for pos in simple.path.numpy()] + + add_trajectory( + server, simple.path.numpy(), robot, attachment_sph, attachment_positions + ) + + # display + while True: + continue + + +if __name__ == "__main__": + Fire(main) diff --git a/src/impl/vamp/bindings/environment.cc b/src/impl/vamp/bindings/environment.cc index ae296b84..c265eb23 100644 --- a/src/impl/vamp/bindings/environment.cc +++ b/src/impl/vamp/bindings/environment.cc @@ -161,8 +161,8 @@ void vamp::binding::init_environment(nanobind::module_ &pymodule) }) .def( "attach", - [](vc::Environment &e, const vc::Attachment &a) { e.attachments.emplace(a); }) - .def("detach", [](vc::Environment &e) { e.attachments.reset(); }); + [](vc::Environment &e, const vc::Attachment &a, const size_t eef_id = 0) { e.attach(a, eef_id); }) + .def("detach", [](vc::Environment &e, const size_t eef_id = 0) { e.detach(eef_id); }); pymodule.def( "filter_pointcloud", diff --git a/src/impl/vamp/bindings/robot_helper.hh b/src/impl/vamp/bindings/robot_helper.hh index 8fa3d7c1..2e8d213e 100644 --- a/src/impl/vamp/bindings/robot_helper.hh +++ b/src/impl/vamp/bindings/robot_helper.hh @@ -276,9 +276,12 @@ namespace vamp::binding path, EnvironmentVector(environment), settings, rng); } - inline static auto eefk(const Type &start) -> Eigen::Matrix4f + inline static auto eefk(const Type &start) -> std::vector { - return Robot::eefk(Input::array(start)).matrix(); + std::vector eefk_m; + for(const auto &fk : Robot::eefk(Input::array(start))) + eefk_m.push_back(fk.matrix()); + return eefk_m; } inline static auto filter_self_from_pointcloud( @@ -355,7 +358,7 @@ namespace vamp::binding "Minimum and maximum radii sizes of robot spheres."); submodule.def( "joint_names", []() { return Robot::joint_names; }, "Joint names for the robot in order of DoF"); - submodule.def("end_effector", []() { return Robot::end_effector; }, "End-effector frame name."); + submodule.def("end_effectors", []() { return Robot::end_effectors; }, "End-effector frame names."); using RNG = vamp::rng::RNG; nb::class_(submodule, "RNG", "RNG for robot configurations.") diff --git a/src/impl/vamp/collision/environment.hh b/src/impl/vamp/collision/environment.hh index a380bf85..7e80120b 100644 --- a/src/impl/vamp/collision/environment.hh +++ b/src/impl/vamp/collision/environment.hh @@ -1,5 +1,6 @@ #pragma once +#include #include #include @@ -11,6 +12,21 @@ namespace vamp::collision { + template + struct EEFAttachment { + size_t eef_idx; + Attachment attachment; + + EEFAttachment(size_t eef_idx, const Attachment& _a) : eef_idx(eef_idx), attachment(_a) {} + + template + EEFAttachment(const EEFAttachment &other) + : eef_idx(other.eef_idx), attachment(other.attachment) + { + } + + }; + template struct Environment { @@ -22,7 +38,23 @@ namespace vamp::collision std::vector> z_aligned_cuboids; std::vector> heightfields; std::vector pointclouds; - std::optional> attachments; + std::vector> eef_attachments; // eef_id to attachment + + void attach(const Attachment &a, size_t eef_idx = 0){ + for(auto &eef_attachment: eef_attachments) + if (eef_attachment.eef_idx == eef_idx){ + eef_attachment.attachment = a; + return ; + } + eef_attachments.emplace_back(eef_idx, a); + } + void detach(size_t eef_idx = 0){ + for(size_t i = 0; i < eef_attachments.size(); i++) + if (eef_attachments[i].eef_idx == eef_idx){ + eef_attachments.erase(eef_attachments.begin() + i); + return ; + } + } Environment() = default; @@ -36,7 +68,7 @@ namespace vamp::collision , z_aligned_cuboids(other.z_aligned_cuboids.begin(), other.z_aligned_cuboids.end()) , heightfields(other.heightfields.begin(), other.heightfields.end()) , pointclouds(other.pointclouds.begin(), other.pointclouds.end()) - , attachments(other.template clone_attachments()) + , eef_attachments(other.eef_attachments.begin(), other.eef_attachments.end()) { } @@ -71,25 +103,21 @@ namespace vamp::collision private: template friend struct Environment; - - template - inline auto clone_attachments() const noexcept -> std::optional> - { - if (attachments) - { - return Attachment(*attachments); - } - - return std::nullopt; - } }; - template + template inline auto set_attachment_pose( const Environment &e, - const Eigen::Transform &p_tf) noexcept + const std::array, N> &p_tfs + ) noexcept { - e.attachments->pose(p_tf); + // small enough N that brute forcing is the best option. + for(auto i=0U; i < N; i++){ + for(auto &eef_attachment : e.eef_attachments) { + if (eef_attachment.eef_idx == i) + eef_attachment.attachment.pose(p_tfs[i]); + } + } } } // namespace vamp::collision diff --git a/src/impl/vamp/collision/validity.hh b/src/impl/vamp/collision/validity.hh index b555c13e..e9be7f97 100644 --- a/src/impl/vamp/collision/validity.hh +++ b/src/impl/vamp/collision/validity.hh @@ -252,18 +252,39 @@ namespace vamp inline constexpr auto attachment_environment_collision(const collision::Environment &e) noexcept -> bool { - for (const auto &s : e.attachments->posed_spheres) - { - // HACK: The radius needs to be a float, and unfortunately the spheres assume homogeneous - // DataT for storage - // TODO: Fix the sphere representation to allow to store float radii even with vector - // centers - if (sphere_environment_in_collision(e, s.x, s.y, s.z, s.r[{0, 0}])) + for (const auto &eef_attachment: e.eef_attachments){ + for (const auto &s : eef_attachment.attachment.posed_spheres) { - return true; + // HACK: The radius needs to be a float, and unfortunately the spheres assume homogeneous + // DataT for storage + // TODO: Fix the sphere representation to allow to store float radii even with vector + // centers + if (sphere_environment_in_collision(e, s.x, s.y, s.z, s.r[{0, 0}])) + { + return true; + } } + + // now treat the other attachments also as potential collision objects + // This is probably expensive, find a more efficient way. + for (const auto &other_eef_attachment: e.eef_attachments){ + if(eef_attachment.eef_idx != other_eef_attachment.eef_idx) { // different obj + for (const auto &s : eef_attachment.attachment.posed_spheres) { + for(const auto &s2 : other_eef_attachment.attachment.posed_spheres) { + if (not collision::sphere_sphere_sql2(s, s2).test_zero()) + { + return true; + } + } + } + } + } + } + + + return false; } @@ -280,15 +301,17 @@ namespace vamp auto sy = static_cast(sy_); auto sz = static_cast(sz_); auto sr = static_cast(sr_); - for (const auto &att_s : e.attachments->posed_spheres) + for (const auto &eef_attachment: e.eef_attachments) { - if (not collision::sphere_sphere_sql2(sx, sy, sz, sr, att_s.x, att_s.y, att_s.z, att_s.r) - .test_zero()) + for (const auto &att_s : eef_attachment.attachment.posed_spheres) { - return true; + if (not collision::sphere_sphere_sql2(sx, sy, sz, sr, att_s.x, att_s.y, att_s.z, att_s.r) + .test_zero()) + { + return true; + } } } - return false; } } // namespace vamp diff --git a/src/impl/vamp/planning/validate.hh b/src/impl/vamp/planning/validate.hh index 0f011d6c..8fe281ed 100644 --- a/src/impl/vamp/planning/validate.hh +++ b/src/impl/vamp/planning/validate.hh @@ -40,7 +40,7 @@ namespace vamp::planning const std::size_t n = std::max(std::ceil(distance / static_cast(rake) * resolution), 1.F); - bool valid = (environment.attachments) ? Robot::template fkcc_attach(environment, block) : + bool valid = (environment.eef_attachments.size()) ? Robot::template fkcc_attach(environment, block) : Robot::template fkcc(environment, block); if (not valid or n == 1) { @@ -55,7 +55,7 @@ namespace vamp::planning block[j] = block[j] - backstep.broadcast(j); } - bool valid = (environment.attachments) ? Robot::template fkcc_attach(environment, block) : + bool valid = (environment.eef_attachments.size()) ? Robot::template fkcc_attach(environment, block) : Robot::template fkcc(environment, block); if (not valid) { diff --git a/src/impl/vamp/robots/baxter.hh b/src/impl/vamp/robots/baxter.hh index 5e9476ca..133139c2 100644 --- a/src/impl/vamp/robots/baxter.hh +++ b/src/impl/vamp/robots/baxter.hh @@ -32,7 +32,7 @@ namespace vamp::robots "right_w0", "right_w1", "right_w2"}; - static constexpr char *end_effector = "right_gripper"; + static constexpr std::array end_effectors = {"right_gripper"}; using Configuration = FloatVector; using ConfigurationArray = std::array; @@ -1433,205 +1433,155 @@ namespace vamp::robots output.first.emplace_back( sphere_environment_get_collisions(environment, y[96], y[97], y[98], y[99])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[100], y[101], y[102], y[103])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[100], y[101], y[102], y[103])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[104], y[105], y[106], y[107])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[104], y[105], y[106], y[107])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[108], y[109], y[110], y[111])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[108], y[109], y[110], y[111])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[112], y[113], y[114], y[115])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[112], y[113], y[114], y[115])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[116], y[117], y[118], y[119])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[116], y[117], y[118], y[119])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[120], y[121], y[122], y[123])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[120], y[121], y[122], y[123])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[124], y[125], y[126], y[127])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[124], y[125], y[126], y[127])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[128], y[129], y[130], y[131])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[128], y[129], y[130], y[131])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[132], y[133], y[134], y[135])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[132], y[133], y[134], y[135])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[136], y[137], y[138], y[139])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[136], y[137], y[138], y[139])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[140], y[141], y[142], y[143])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[140], y[141], y[142], y[143])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[144], y[145], y[146], y[147])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[144], y[145], y[146], y[147])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[148], y[149], y[150], y[151])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[148], y[149], y[150], y[151])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[152], y[153], y[154], y[155])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[152], y[153], y[154], y[155])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[156], y[157], y[158], y[159])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[156], y[157], y[158], y[159])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[160], y[161], y[162], y[163])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[160], y[161], y[162], y[163])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[164], y[165], y[166], y[167])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[164], y[165], y[166], y[167])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[168], y[169], y[170], y[171])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[168], y[169], y[170], y[171])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[172], y[173], y[174], y[175])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[172], y[173], y[174], y[175])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[176], y[177], y[178], y[179])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[176], y[177], y[178], y[179])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[180], y[181], y[182], y[183])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[180], y[181], y[182], y[183])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[184], y[185], y[186], y[187])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[184], y[185], y[186], y[187])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[188], y[189], y[190], y[191])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[188], y[189], y[190], y[191])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[192], y[193], y[194], y[195])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[192], y[193], y[194], y[195])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[196], y[197], y[198], y[199])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[196], y[197], y[198], y[199])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[200], y[201], y[202], y[203])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[200], y[201], y[202], y[203])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[204], y[205], y[206], y[207])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[204], y[205], y[206], y[207])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[208], y[209], y[210], y[211])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[208], y[209], y[210], y[211])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[212], y[213], y[214], y[215])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[212], y[213], y[214], y[215])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[216], y[217], y[218], y[219])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[216], y[217], y[218], y[219])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[220], y[221], y[222], y[223])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[220], y[221], y[222], y[223])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[224], y[225], y[226], y[227])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[224], y[225], y[226], y[227])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[228], y[229], y[230], y[231])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[228], y[229], y[230], y[231])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[232], y[233], y[234], y[235])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[232], y[233], y[234], y[235])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[236], y[237], y[238], y[239])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[236], y[237], y[238], y[239])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[240], y[241], y[242], y[243])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[240], y[241], y[242], y[243])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[244], y[245], y[246], y[247])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[244], y[245], y[246], y[247])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[248], y[249], y[250], y[251])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[248], y[249], y[250], y[251])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[252], y[253], y[254], y[255])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[252], y[253], y[254], y[255])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[256], y[257], y[258], y[259])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[256], y[257], y[258], y[259])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[260], y[261], y[262], y[263])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[260], y[261], y[262], y[263])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[264], y[265], y[266], y[267])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[264], y[265], y[266], y[267])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[268], y[269], y[270], y[271])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[268], y[269], y[270], y[271])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[272], y[273], y[274], y[275])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[272], y[273], y[274], y[275])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[276], y[277], y[278], y[279])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[276], y[277], y[278], y[279])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[280], y[281], y[282], y[283])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[280], y[281], y[282], y[283])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[284], y[285], y[286], y[287])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[284], y[285], y[286], y[287])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[288], y[289], y[290], y[291])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[288], y[289], y[290], y[291])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[292], y[293], y[294], y[295])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[292], y[293], y[294], y[295])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[296], y[297], y[298], y[299])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[296], y[297], y[298], y[299])); if (sphere_sphere_self_collision( y[0], y[1], y[2], y[3], y[40], y[41], y[42], y[43])) @@ -40958,8 +40908,9 @@ namespace vamp::robots } } - // attaching at right_gripper - set_attachment_pose(environment, to_isometry(&y[432])); + // attaching at ["right_gripper"] + // provide the eef pose of all end effectors. + set_attachment_pose(environment, to_isometries<1>(&y[432])); // // attachment vs. environment collisions @@ -41332,7 +41283,7 @@ namespace vamp::robots return true; } - inline static auto eefk(const std::array &x) noexcept -> Eigen::Isometry3f + inline static auto eefk(const std::array &x) noexcept -> std::array { std::array v; std::array y; @@ -41446,7 +41397,7 @@ namespace vamp::robots y[7] = v[32] * v[11] + v[17] * v[30] + v[13] * v[27]; y[8] = v[38] * v[11] + v[34] * v[30] + v[3] * v[27]; - return to_isometry(y.data()); + return to_isometries<1>(y.data()); } }; } // namespace vamp::robots diff --git a/src/impl/vamp/robots/bimanualpanda.hh b/src/impl/vamp/robots/bimanualpanda.hh new file mode 100644 index 00000000..c7b3384d --- /dev/null +++ b/src/impl/vamp/robots/bimanualpanda.hh @@ -0,0 +1,95154 @@ +#pragma once + +#include +#include +#include +#include + +// NOLINTBEGIN(*-magic-numbers) +namespace vamp::robots +{ + struct BimanualPanda + { + static constexpr char *name = "bimanualpanda"; + static constexpr std::size_t dimension = 14; + static constexpr std::size_t n_spheres = 118; + static constexpr float min_radius = 0.012000000104308128; + static constexpr float max_radius = 0.07999999821186066; + static constexpr std::size_t resolution = 32; + + static constexpr std::array joint_names = { + "left_panda_joint1", + "left_panda_joint2", + "left_panda_joint3", + "left_panda_joint4", + "left_panda_joint5", + "left_panda_joint6", + "left_panda_joint7", + "right_panda_joint1", + "right_panda_joint2", + "right_panda_joint3", + "right_panda_joint4", + "right_panda_joint5", + "right_panda_joint6", + "right_panda_joint7"}; + static constexpr std::array end_effectors = { + "left_panda_grasptarget", + "right_panda_grasptarget"}; + + using Configuration = FloatVector; + using ConfigurationArray = std::array; + + struct alignas(FloatVectorAlignment) ConfigurationBuffer + : std::array + { + }; + + template + using ConfigurationBlock = FloatVector; + + template + struct Spheres + { + FloatVector x; + FloatVector y; + FloatVector z; + FloatVector r; + }; + + alignas(Configuration::S::Alignment) static constexpr std::array s_m{ + 5.934199810028076, + 3.6651999950408936, + 5.934199810028076, + 3.2288999557495117, + 5.934199810028076, + 3.909600019454956, + 5.934199810028076, + 5.934199810028076, + 3.6651999950408936, + 5.934199810028076, + 3.2288999557495117, + 5.934199810028076, + 3.909600019454956, + 5.934199810028076}; + + alignas(Configuration::S::Alignment) static constexpr std::array s_a{ + -2.967099905014038, + -1.8325999975204468, + -2.967099905014038, + -3.1415998935699463, + -2.967099905014038, + -0.08730000257492065, + -2.967099905014038, + -2.967099905014038, + -1.8325999975204468, + -2.967099905014038, + -3.1415998935699463, + -2.967099905014038, + -0.08730000257492065, + -2.967099905014038}; + + alignas(Configuration::S::Alignment) static constexpr std::array d_m{ + 0.16851471364498138, + 0.2728364169597626, + 0.16851471364498138, + 0.30970299243927, + 0.16851471364498138, + 0.2557806372642517, + 0.16851471364498138, + 0.16851471364498138, + 0.2728364169597626, + 0.16851471364498138, + 0.30970299243927, + 0.16851471364498138, + 0.2557806372642517, + 0.16851471364498138}; + + inline static void scale_configuration(Configuration &q) noexcept + { + q = q * Configuration(s_m) + Configuration(s_a); + } + + inline static void descale_configuration(Configuration &q) noexcept + { + q = (q - Configuration(s_a)) * Configuration(d_m); + } + + template + inline static void scale_configuration_block(ConfigurationBlock &q) noexcept + { + q[0] = -2.967099905014038 + (q[0] * 5.934199810028076); + q[1] = -1.8325999975204468 + (q[1] * 3.6651999950408936); + q[2] = -2.967099905014038 + (q[2] * 5.934199810028076); + q[3] = -3.1415998935699463 + (q[3] * 3.2288999557495117); + q[4] = -2.967099905014038 + (q[4] * 5.934199810028076); + q[5] = -0.08730000257492065 + (q[5] * 3.909600019454956); + q[6] = -2.967099905014038 + (q[6] * 5.934199810028076); + q[7] = -2.967099905014038 + (q[7] * 5.934199810028076); + q[8] = -1.8325999975204468 + (q[8] * 3.6651999950408936); + q[9] = -2.967099905014038 + (q[9] * 5.934199810028076); + q[10] = -3.1415998935699463 + (q[10] * 3.2288999557495117); + q[11] = -2.967099905014038 + (q[11] * 5.934199810028076); + q[12] = -0.08730000257492065 + (q[12] * 3.909600019454956); + q[13] = -2.967099905014038 + (q[13] * 5.934199810028076); + } + + template + inline static void descale_configuration_block(ConfigurationBlock &q) noexcept + { + q[0] = 0.16851471364498138 * (q[0] - -2.967099905014038); + q[1] = 0.2728364169597626 * (q[1] - -1.8325999975204468); + q[2] = 0.16851471364498138 * (q[2] - -2.967099905014038); + q[3] = 0.30970299243927 * (q[3] - -3.1415998935699463); + q[4] = 0.16851471364498138 * (q[4] - -2.967099905014038); + q[5] = 0.2557806372642517 * (q[5] - -0.08730000257492065); + q[6] = 0.16851471364498138 * (q[6] - -2.967099905014038); + q[7] = 0.16851471364498138 * (q[7] - -2.967099905014038); + q[8] = 0.2728364169597626 * (q[8] - -1.8325999975204468); + q[9] = 0.16851471364498138 * (q[9] - -2.967099905014038); + q[10] = 0.30970299243927 * (q[10] - -3.1415998935699463); + q[11] = 0.16851471364498138 * (q[11] - -2.967099905014038); + q[12] = 0.2557806372642517 * (q[12] - -0.08730000257492065); + q[13] = 0.16851471364498138 * (q[13] - -2.967099905014038); + } + + inline static auto space_measure() noexcept -> float + { + return 3292051583.8961253; + } + + template + inline static void sphere_fk(const ConfigurationBlock &x, Spheres &out) noexcept + { + std::array, 22> v; + std::array, 472> y; + + v[0] = sin(x[0]); + v[1] = -v[0]; + y[4] = -0.08 * v[1]; + v[2] = cos(x[0]); + y[5] = -0.2875 + -0.08 * v[2]; + y[8] = -0.03 * v[1]; + y[9] = -0.2875 + -0.03 * v[2]; + y[20] = 0.03 * v[1]; + y[21] = -0.2875 + 0.03 * v[2]; + y[24] = 0.08 * v[1]; + y[25] = -0.2875 + 0.08 * v[2]; + v[3] = sin(x[1]); + v[4] = -v[3]; + v[5] = cos(x[1]); + v[6] = 4.89663865010925e-12 * v[5]; + v[7] = v[2] * v[4] + v[1] * v[6]; + y[28] = -0.12 * v[7]; + v[6] = v[0] * v[4] + v[2] * v[6]; + y[29] = -0.2875 + -0.12 * v[6]; + v[4] = -1. * v[5]; + y[30] = 0.333 + -0.12 * v[4]; + y[32] = -0.17 * v[7]; + y[33] = -0.2875 + -0.17 * v[6]; + y[34] = 0.333 + -0.17 * v[4]; + v[8] = -1. * v[7] + 4.89663865010925e-12 * v[1]; + v[9] = -0.316 * v[7]; + y[36] = -0.1 * v[8] + v[9]; + v[10] = -1. * v[6] + 4.89663865010925e-12 * v[2]; + v[11] = -0.2875 + -0.316 * v[6]; + y[37] = -0.1 * v[10] + v[11]; + v[12] = 2.39770700697438e-23 + -1. * v[4]; + v[13] = 0.333 + -0.316 * v[4]; + y[38] = -0.1 * v[12] + v[13]; + y[40] = -0.06 * v[8] + v[9]; + y[41] = -0.06 * v[10] + v[11]; + y[42] = -0.06 * v[12] + v[13]; + v[14] = 4.89663865010925e-12 * v[3]; + v[15] = v[2] * v[5] + v[1] * v[14]; + v[16] = cos(x[2]); + v[17] = sin(x[2]); + v[18] = 4.89663865010925e-12 * v[17]; + v[19] = v[15] * v[16] + v[7] * v[18] + v[1] * v[17]; + v[20] = -v[17]; + v[21] = 4.89663865010925e-12 * v[16]; + v[15] = v[15] * v[20] + v[7] * v[21] + v[1] * v[16]; + y[44] = 0.08 * v[19] + 0.06 * v[15] + v[9]; + v[14] = v[0] * v[5] + v[2] * v[14]; + v[5] = v[14] * v[16] + v[6] * v[18] + v[2] * v[17]; + v[14] = v[14] * v[20] + v[6] * v[21] + v[2] * v[16]; + y[45] = 0.08 * v[5] + 0.06 * v[14] + v[11]; + v[3] = -1. * v[3]; + v[18] = v[3] * v[16] + v[4] * v[18] + 4.89663865010925e-12 * v[17]; + v[3] = v[3] * v[20] + v[4] * v[21] + 4.89663865010925e-12 * v[16]; + y[46] = 0.08 * v[18] + 0.06 * v[3] + v[13]; + y[48] = 0.08 * v[19] + 0.02 * v[15] + v[9]; + y[49] = 0.08 * v[5] + 0.02 * v[14] + v[11]; + y[50] = 0.08 * v[18] + 0.02 * v[3] + v[13]; + v[21] = cos(x[3]); + v[20] = sin(x[3]); + v[16] = 4.89663865010925e-12 * v[20]; + v[4] = v[19] * v[21] + v[15] * v[16] + v[8] * v[20]; + v[17] = -v[20]; + v[6] = 4.89663865010925e-12 * v[21]; + v[2] = v[19] * v[17] + v[15] * v[6] + v[8] * v[21]; + v[19] = v[9] + 0.0825 * v[19]; + y[52] = -0.08 * v[4] + 0.095 * v[2] + v[19]; + v[9] = v[5] * v[21] + v[14] * v[16] + v[10] * v[20]; + v[0] = v[5] * v[17] + v[14] * v[6] + v[10] * v[21]; + v[5] = v[11] + 0.0825 * v[5]; + y[53] = -0.08 * v[9] + 0.095 * v[0] + v[5]; + v[16] = v[18] * v[21] + v[3] * v[16] + v[12] * v[20]; + v[6] = v[18] * v[17] + v[3] * v[6] + v[12] * v[21]; + v[18] = v[13] + 0.0825 * v[18]; + y[54] = -0.08 * v[16] + 0.095 * v[6] + v[18]; + v[15] = -1. * v[15] + 4.89663865010925e-12 * v[8]; + y[56] = 0.02 * v[15] + v[19]; + v[14] = -1. * v[14] + 4.89663865010925e-12 * v[10]; + y[57] = 0.02 * v[14] + v[5]; + v[3] = -1. * v[3] + 4.89663865010925e-12 * v[12]; + y[58] = 0.02 * v[3] + v[18]; + y[60] = 0.06 * v[15] + v[19]; + y[61] = 0.06 * v[14] + v[5]; + y[62] = 0.06 * v[3] + v[18]; + y[64] = -0.08 * v[4] + 0.06 * v[2] + v[19]; + y[65] = -0.08 * v[9] + 0.06 * v[0] + v[5]; + y[66] = -0.08 * v[16] + 0.06 * v[6] + v[18]; + v[12] = sin(x[4]); + v[10] = -v[12]; + v[8] = cos(x[4]); + v[13] = 4.89663865010925e-12 * v[8]; + v[17] = -1. * v[8]; + v[21] = v[4] * v[10] + v[2] * v[13] + v[15] * v[17]; + y[116] = v[19] + -0.0825 * v[4] + 0.384 * v[2]; + y[68] = 0.055 * v[21] + y[116]; + v[19] = v[9] * v[10] + v[0] * v[13] + v[14] * v[17]; + y[117] = v[5] + -0.0825 * v[9] + 0.384 * v[0]; + y[69] = 0.055 * v[19] + y[117]; + v[17] = v[16] * v[10] + v[6] * v[13] + v[3] * v[17]; + y[118] = v[18] + -0.0825 * v[16] + 0.384 * v[6]; + y[70] = 0.055 * v[17] + y[118]; + y[72] = 0.075 * v[21] + y[116]; + y[73] = 0.075 * v[19] + y[117]; + y[74] = 0.075 * v[17] + y[118]; + v[18] = v[2] + 4.89663865010925e-12 * v[15]; + y[76] = -0.22 * v[18] + y[116]; + v[13] = v[0] + 4.89663865010925e-12 * v[14]; + y[77] = -0.22 * v[13] + y[117]; + v[10] = v[6] + 4.89663865010925e-12 * v[3]; + y[78] = -0.22 * v[10] + y[118]; + y[80] = 0.05 * v[21] + -0.18 * v[18] + y[116]; + y[81] = 0.05 * v[19] + -0.18 * v[13] + y[117]; + y[82] = 0.05 * v[17] + -0.18 * v[10] + y[118]; + v[5] = 4.89663865010925e-12 * v[12]; + v[12] = -1. * v[12]; + v[15] = v[4] * v[8] + v[2] * v[5] + v[15] * v[12]; + y[84] = 0.01 * v[15] + 0.08 * v[21] + -0.14 * v[18] + y[116]; + v[14] = v[9] * v[8] + v[0] * v[5] + v[14] * v[12]; + y[85] = 0.01 * v[14] + 0.08 * v[19] + -0.14 * v[13] + y[117]; + v[12] = v[16] * v[8] + v[6] * v[5] + v[3] * v[12]; + y[86] = 0.01 * v[12] + 0.08 * v[17] + -0.14 * v[10] + y[118]; + y[88] = 0.01 * v[15] + 0.085 * v[21] + -0.11 * v[18] + y[116]; + y[89] = 0.01 * v[14] + 0.085 * v[19] + -0.11 * v[13] + y[117]; + y[90] = 0.01 * v[12] + 0.085 * v[17] + -0.11 * v[10] + y[118]; + y[92] = 0.01 * v[15] + 0.09 * v[21] + -0.08 * v[18] + y[116]; + y[93] = 0.01 * v[14] + 0.09 * v[19] + -0.08 * v[13] + y[117]; + y[94] = 0.01 * v[12] + 0.09 * v[17] + -0.08 * v[10] + y[118]; + y[96] = 0.01 * v[15] + 0.095 * v[21] + -0.05 * v[18] + y[116]; + y[97] = 0.01 * v[14] + 0.095 * v[19] + -0.05 * v[13] + y[117]; + y[98] = 0.01 * v[12] + 0.095 * v[17] + -0.05 * v[10] + y[118]; + y[100] = -0.01 * v[15] + 0.08 * v[21] + -0.14 * v[18] + y[116]; + y[101] = -0.01 * v[14] + 0.08 * v[19] + -0.14 * v[13] + y[117]; + y[102] = -0.01 * v[12] + 0.08 * v[17] + -0.14 * v[10] + y[118]; + y[104] = -0.01 * v[15] + 0.085 * v[21] + -0.11 * v[18] + y[116]; + y[105] = -0.01 * v[14] + 0.085 * v[19] + -0.11 * v[13] + y[117]; + y[106] = -0.01 * v[12] + 0.085 * v[17] + -0.11 * v[10] + y[118]; + y[108] = -0.01 * v[15] + 0.09 * v[21] + -0.08 * v[18] + y[116]; + y[109] = -0.01 * v[14] + 0.09 * v[19] + -0.08 * v[13] + y[117]; + y[110] = -0.01 * v[12] + 0.09 * v[17] + -0.08 * v[10] + y[118]; + y[112] = -0.01 * v[15] + 0.095 * v[21] + -0.05 * v[18] + y[116]; + y[113] = -0.01 * v[14] + 0.095 * v[19] + -0.05 * v[13] + y[117]; + y[114] = -0.01 * v[12] + 0.095 * v[17] + -0.05 * v[10] + y[118]; + v[5] = cos(x[5]); + v[8] = sin(x[5]); + v[3] = 4.89663865010925e-12 * v[8]; + v[6] = v[15] * v[5] + v[21] * v[3] + v[18] * v[8]; + v[16] = -v[8]; + v[0] = 4.89663865010925e-12 * v[5]; + v[15] = v[15] * v[16] + v[21] * v[0] + v[18] * v[5]; + y[120] = 0.08 * v[6] + -0.01 * v[15] + y[116]; + v[9] = v[14] * v[5] + v[19] * v[3] + v[13] * v[8]; + v[14] = v[14] * v[16] + v[19] * v[0] + v[13] * v[5]; + y[121] = 0.08 * v[9] + -0.01 * v[14] + y[117]; + v[3] = v[12] * v[5] + v[17] * v[3] + v[10] * v[8]; + v[0] = v[12] * v[16] + v[17] * v[0] + v[10] * v[5]; + y[122] = 0.08 * v[3] + -0.01 * v[0] + y[118]; + y[124] = 0.08 * v[6] + 0.035 * v[15] + y[116]; + y[125] = 0.08 * v[9] + 0.035 * v[14] + y[117]; + y[126] = 0.08 * v[3] + 0.035 * v[0] + y[118]; + v[18] = -1. * v[21] + 4.89663865010925e-12 * v[18]; + v[21] = -1. * v[15] + 4.89663865010925e-12 * v[18]; + v[16] = y[116] + 0.088 * v[6]; + y[128] = 0.07 * v[21] + v[16]; + v[13] = -1. * v[19] + 4.89663865010925e-12 * v[13]; + v[19] = -1. * v[14] + 4.89663865010925e-12 * v[13]; + v[5] = y[117] + 0.088 * v[9]; + y[129] = 0.07 * v[19] + v[5]; + v[10] = -1. * v[17] + 4.89663865010925e-12 * v[10]; + v[17] = -1. * v[0] + 4.89663865010925e-12 * v[10]; + v[12] = y[118] + 0.088 * v[3]; + y[130] = 0.07 * v[17] + v[12]; + v[8] = cos(x[6]); + v[2] = sin(x[6]); + v[4] = 4.89663865010925e-12 * v[2]; + v[20] = v[6] * v[8] + v[15] * v[4] + v[18] * v[2]; + v[11] = -v[2]; + v[7] = 4.89663865010925e-12 * v[8]; + v[18] = v[6] * v[11] + v[15] * v[7] + v[18] * v[8]; + y[132] = 0.02 * v[20] + 0.04 * v[18] + 0.08 * v[21] + v[16]; + v[15] = v[9] * v[8] + v[14] * v[4] + v[13] * v[2]; + v[13] = v[9] * v[11] + v[14] * v[7] + v[13] * v[8]; + y[133] = 0.02 * v[15] + 0.04 * v[13] + 0.08 * v[19] + v[5]; + v[4] = v[3] * v[8] + v[0] * v[4] + v[10] * v[2]; + v[7] = v[3] * v[11] + v[0] * v[7] + v[10] * v[8]; + y[134] = 0.02 * v[4] + 0.04 * v[7] + 0.08 * v[17] + v[12]; + y[136] = 0.04 * v[20] + 0.02 * v[18] + 0.08 * v[21] + v[16]; + y[137] = 0.04 * v[15] + 0.02 * v[13] + 0.08 * v[19] + v[5]; + y[138] = 0.04 * v[4] + 0.02 * v[7] + 0.08 * v[17] + v[12]; + y[140] = 0.04 * v[20] + 0.06 * v[18] + 0.085 * v[21] + v[16]; + y[141] = 0.04 * v[15] + 0.06 * v[13] + 0.085 * v[19] + v[5]; + y[142] = 0.04 * v[4] + 0.06 * v[7] + 0.085 * v[17] + v[12]; + y[144] = 0.06 * v[20] + 0.04 * v[18] + 0.085 * v[21] + v[16]; + y[145] = 0.06 * v[15] + 0.04 * v[13] + 0.085 * v[19] + v[5]; + y[146] = 0.06 * v[4] + 0.04 * v[7] + 0.085 * v[17] + v[12]; + y[148] = -0.0530330085889673 * v[20] + -0.0530330085890148 * v[18] + 0.117 * v[21] + v[16]; + y[149] = -0.0530330085889673 * v[15] + -0.0530330085890148 * v[13] + 0.117 * v[19] + v[5]; + y[150] = -0.0530330085889673 * v[4] + -0.0530330085890148 * v[7] + 0.117 * v[17] + v[12]; + y[152] = -0.0318198051533804 * v[20] + -0.0318198051534089 * v[18] + 0.117 * v[21] + v[16]; + y[153] = -0.0318198051533804 * v[15] + -0.0318198051534089 * v[13] + 0.117 * v[19] + v[5]; + y[154] = -0.0318198051533804 * v[4] + -0.0318198051534089 * v[7] + 0.117 * v[17] + v[12]; + y[156] = -0.0106066017177935 * v[20] + -0.010606601717803 * v[18] + 0.117 * v[21] + v[16]; + y[157] = -0.0106066017177935 * v[15] + -0.010606601717803 * v[13] + 0.117 * v[19] + v[5]; + y[158] = -0.0106066017177935 * v[4] + -0.010606601717803 * v[7] + 0.117 * v[17] + v[12]; + y[160] = 0.0106066017177935 * v[20] + 0.010606601717803 * v[18] + 0.117 * v[21] + v[16]; + y[161] = 0.0106066017177935 * v[15] + 0.010606601717803 * v[13] + 0.117 * v[19] + v[5]; + y[162] = 0.0106066017177935 * v[4] + 0.010606601717803 * v[7] + 0.117 * v[17] + v[12]; + y[164] = 0.0318198051533804 * v[20] + 0.0318198051534089 * v[18] + 0.117 * v[21] + v[16]; + y[165] = 0.0318198051533804 * v[15] + 0.0318198051534089 * v[13] + 0.117 * v[19] + v[5]; + y[166] = 0.0318198051533804 * v[4] + 0.0318198051534089 * v[7] + 0.117 * v[17] + v[12]; + y[168] = 0.0530330085889673 * v[20] + 0.0530330085890148 * v[18] + 0.117 * v[21] + v[16]; + y[169] = 0.0530330085889673 * v[15] + 0.0530330085890148 * v[13] + 0.117 * v[19] + v[5]; + y[170] = 0.0530330085889673 * v[4] + 0.0530330085890148 * v[7] + 0.117 * v[17] + v[12]; + y[172] = -0.0530330085889673 * v[20] + -0.0530330085890148 * v[18] + 0.137 * v[21] + v[16]; + y[173] = -0.0530330085889673 * v[15] + -0.0530330085890148 * v[13] + 0.137 * v[19] + v[5]; + y[174] = -0.0530330085889673 * v[4] + -0.0530330085890148 * v[7] + 0.137 * v[17] + v[12]; + y[176] = -0.0318198051533804 * v[20] + -0.0318198051534089 * v[18] + 0.137 * v[21] + v[16]; + y[177] = -0.0318198051533804 * v[15] + -0.0318198051534089 * v[13] + 0.137 * v[19] + v[5]; + y[178] = -0.0318198051533804 * v[4] + -0.0318198051534089 * v[7] + 0.137 * v[17] + v[12]; + y[180] = -0.0106066017177935 * v[20] + -0.010606601717803 * v[18] + 0.137 * v[21] + v[16]; + y[181] = -0.0106066017177935 * v[15] + -0.010606601717803 * v[13] + 0.137 * v[19] + v[5]; + y[182] = -0.0106066017177935 * v[4] + -0.010606601717803 * v[7] + 0.137 * v[17] + v[12]; + y[184] = 0.0106066017177935 * v[20] + 0.010606601717803 * v[18] + 0.137 * v[21] + v[16]; + y[185] = 0.0106066017177935 * v[15] + 0.010606601717803 * v[13] + 0.137 * v[19] + v[5]; + y[186] = 0.0106066017177935 * v[4] + 0.010606601717803 * v[7] + 0.137 * v[17] + v[12]; + y[188] = 0.0318198051533804 * v[20] + 0.0318198051534089 * v[18] + 0.137 * v[21] + v[16]; + y[189] = 0.0318198051533804 * v[15] + 0.0318198051534089 * v[13] + 0.137 * v[19] + v[5]; + y[190] = 0.0318198051533804 * v[4] + 0.0318198051534089 * v[7] + 0.137 * v[17] + v[12]; + y[192] = 0.0530330085889673 * v[20] + 0.0530330085890148 * v[18] + 0.137 * v[21] + v[16]; + y[193] = 0.0530330085889673 * v[15] + 0.0530330085890148 * v[13] + 0.137 * v[19] + v[5]; + y[194] = 0.0530330085889673 * v[4] + 0.0530330085890148 * v[7] + 0.137 * v[17] + v[12]; + y[196] = -0.0530330085889673 * v[20] + -0.0530330085890148 * v[18] + 0.157 * v[21] + v[16]; + y[197] = -0.0530330085889673 * v[15] + -0.0530330085890148 * v[13] + 0.157 * v[19] + v[5]; + y[198] = -0.0530330085889673 * v[4] + -0.0530330085890148 * v[7] + 0.157 * v[17] + v[12]; + y[200] = -0.0318198051533804 * v[20] + -0.0318198051534089 * v[18] + 0.157 * v[21] + v[16]; + y[201] = -0.0318198051533804 * v[15] + -0.0318198051534089 * v[13] + 0.157 * v[19] + v[5]; + y[202] = -0.0318198051533804 * v[4] + -0.0318198051534089 * v[7] + 0.157 * v[17] + v[12]; + y[204] = -0.0106066017177935 * v[20] + -0.010606601717803 * v[18] + 0.157 * v[21] + v[16]; + y[205] = -0.0106066017177935 * v[15] + -0.010606601717803 * v[13] + 0.157 * v[19] + v[5]; + y[206] = -0.0106066017177935 * v[4] + -0.010606601717803 * v[7] + 0.157 * v[17] + v[12]; + y[208] = 0.0106066017177935 * v[20] + 0.010606601717803 * v[18] + 0.157 * v[21] + v[16]; + y[209] = 0.0106066017177935 * v[15] + 0.010606601717803 * v[13] + 0.157 * v[19] + v[5]; + y[210] = 0.0106066017177935 * v[4] + 0.010606601717803 * v[7] + 0.157 * v[17] + v[12]; + y[212] = 0.0318198051533804 * v[20] + 0.0318198051534089 * v[18] + 0.157 * v[21] + v[16]; + y[213] = 0.0318198051533804 * v[15] + 0.0318198051534089 * v[13] + 0.157 * v[19] + v[5]; + y[214] = 0.0318198051533804 * v[4] + 0.0318198051534089 * v[7] + 0.157 * v[17] + v[12]; + y[216] = 0.0530330085889673 * v[20] + 0.0530330085890148 * v[18] + 0.157 * v[21] + v[16]; + y[217] = 0.0530330085889673 * v[15] + 0.0530330085890148 * v[13] + 0.157 * v[19] + v[5]; + y[218] = 0.0530330085889673 * v[4] + 0.0530330085890148 * v[7] + 0.157 * v[17] + v[12]; + y[220] = 0.0565685424948984 * v[20] + 0.0565685424949492 * v[18] + 0.1874 * v[21] + v[16]; + y[221] = 0.0565685424948984 * v[15] + 0.0565685424949492 * v[13] + 0.1874 * v[19] + v[5]; + y[222] = 0.0565685424948984 * v[4] + 0.0565685424949492 * v[7] + 0.1874 * v[17] + v[12]; + y[224] = 0.0516187950265948 * v[20] + 0.0516187950266411 * v[18] + 0.2094 * v[21] + v[16]; + y[225] = 0.0516187950265948 * v[15] + 0.0516187950266411 * v[13] + 0.2094 * v[19] + v[5]; + y[226] = 0.0516187950265948 * v[4] + 0.0516187950266411 * v[7] + 0.2094 * v[17] + v[12]; + y[228] = -0.0565685424948984 * v[20] + -0.0565685424949492 * v[18] + 0.1874 * v[21] + v[16]; + y[229] = -0.0565685424948984 * v[15] + -0.0565685424949492 * v[13] + 0.1874 * v[19] + v[5]; + y[230] = -0.0565685424948984 * v[4] + -0.0565685424949492 * v[7] + 0.1874 * v[17] + v[12]; + y[232] = -0.0516187950265948 * v[20] + -0.0516187950266411 * v[18] + 0.2094 * v[21] + v[16]; + y[233] = -0.0516187950265948 * v[15] + -0.0516187950266411 * v[13] + 0.2094 * v[19] + v[5]; + y[234] = -0.0516187950265948 * v[4] + -0.0516187950266411 * v[7] + 0.2094 * v[17] + v[12]; + v[7] = sin(x[7]); + v[4] = -v[7]; + y[240] = -0.08 * v[4]; + v[12] = cos(x[7]); + y[241] = 0.2875 + -0.08 * v[12]; + y[244] = -0.03 * v[4]; + y[245] = 0.2875 + -0.03 * v[12]; + y[256] = 0.03 * v[4]; + y[257] = 0.2875 + 0.03 * v[12]; + y[260] = 0.08 * v[4]; + y[261] = 0.2875 + 0.08 * v[12]; + v[17] = sin(x[8]); + v[13] = -v[17]; + v[15] = cos(x[8]); + v[5] = 4.89663865010925e-12 * v[15]; + v[19] = v[12] * v[13] + v[4] * v[5]; + y[264] = -0.12 * v[19]; + v[5] = v[7] * v[13] + v[12] * v[5]; + y[265] = 0.2875 + -0.12 * v[5]; + v[13] = -1. * v[15]; + y[266] = 0.333 + -0.12 * v[13]; + y[268] = -0.17 * v[19]; + y[269] = 0.2875 + -0.17 * v[5]; + y[270] = 0.333 + -0.17 * v[13]; + v[18] = -1. * v[19] + 4.89663865010925e-12 * v[4]; + v[20] = -0.316 * v[19]; + y[272] = -0.1 * v[18] + v[20]; + v[16] = -1. * v[5] + 4.89663865010925e-12 * v[12]; + v[21] = 0.2875 + -0.316 * v[5]; + y[273] = -0.1 * v[16] + v[21]; + v[11] = 2.39770700697438e-23 + -1. * v[13]; + v[8] = 0.333 + -0.316 * v[13]; + y[274] = -0.1 * v[11] + v[8]; + y[276] = -0.06 * v[18] + v[20]; + y[277] = -0.06 * v[16] + v[21]; + y[278] = -0.06 * v[11] + v[8]; + v[10] = 4.89663865010925e-12 * v[17]; + v[0] = v[12] * v[15] + v[4] * v[10]; + v[3] = cos(x[9]); + v[2] = sin(x[9]); + v[14] = 4.89663865010925e-12 * v[2]; + v[9] = v[0] * v[3] + v[19] * v[14] + v[4] * v[2]; + v[6] = -v[2]; + v[1] = 4.89663865010925e-12 * v[3]; + v[0] = v[0] * v[6] + v[19] * v[1] + v[4] * v[3]; + y[280] = 0.08 * v[9] + 0.06 * v[0] + v[20]; + v[10] = v[7] * v[15] + v[12] * v[10]; + v[15] = v[10] * v[3] + v[5] * v[14] + v[12] * v[2]; + v[10] = v[10] * v[6] + v[5] * v[1] + v[12] * v[3]; + y[281] = 0.08 * v[15] + 0.06 * v[10] + v[21]; + v[17] = -1. * v[17]; + v[14] = v[17] * v[3] + v[13] * v[14] + 4.89663865010925e-12 * v[2]; + v[17] = v[17] * v[6] + v[13] * v[1] + 4.89663865010925e-12 * v[3]; + y[282] = 0.08 * v[14] + 0.06 * v[17] + v[8]; + y[284] = 0.08 * v[9] + 0.02 * v[0] + v[20]; + y[285] = 0.08 * v[15] + 0.02 * v[10] + v[21]; + y[286] = 0.08 * v[14] + 0.02 * v[17] + v[8]; + v[1] = cos(x[10]); + v[6] = sin(x[10]); + v[3] = 4.89663865010925e-12 * v[6]; + v[13] = v[9] * v[1] + v[0] * v[3] + v[18] * v[6]; + v[2] = -v[6]; + v[5] = 4.89663865010925e-12 * v[1]; + v[12] = v[9] * v[2] + v[0] * v[5] + v[18] * v[1]; + v[9] = v[20] + 0.0825 * v[9]; + y[288] = -0.08 * v[13] + 0.095 * v[12] + v[9]; + v[20] = v[15] * v[1] + v[10] * v[3] + v[16] * v[6]; + v[7] = v[15] * v[2] + v[10] * v[5] + v[16] * v[1]; + v[15] = v[21] + 0.0825 * v[15]; + y[289] = -0.08 * v[20] + 0.095 * v[7] + v[15]; + v[3] = v[14] * v[1] + v[17] * v[3] + v[11] * v[6]; + v[5] = v[14] * v[2] + v[17] * v[5] + v[11] * v[1]; + v[14] = v[8] + 0.0825 * v[14]; + y[290] = -0.08 * v[3] + 0.095 * v[5] + v[14]; + v[0] = -1. * v[0] + 4.89663865010925e-12 * v[18]; + y[292] = 0.02 * v[0] + v[9]; + v[10] = -1. * v[10] + 4.89663865010925e-12 * v[16]; + y[293] = 0.02 * v[10] + v[15]; + v[17] = -1. * v[17] + 4.89663865010925e-12 * v[11]; + y[294] = 0.02 * v[17] + v[14]; + y[296] = 0.06 * v[0] + v[9]; + y[297] = 0.06 * v[10] + v[15]; + y[298] = 0.06 * v[17] + v[14]; + y[300] = -0.08 * v[13] + 0.06 * v[12] + v[9]; + y[301] = -0.08 * v[20] + 0.06 * v[7] + v[15]; + y[302] = -0.08 * v[3] + 0.06 * v[5] + v[14]; + v[11] = sin(x[11]); + v[16] = -v[11]; + v[18] = cos(x[11]); + v[8] = 4.89663865010925e-12 * v[18]; + v[2] = -1. * v[18]; + v[1] = v[13] * v[16] + v[12] * v[8] + v[0] * v[2]; + y[352] = v[9] + -0.0825 * v[13] + 0.384 * v[12]; + y[304] = 0.055 * v[1] + y[352]; + v[9] = v[20] * v[16] + v[7] * v[8] + v[10] * v[2]; + y[353] = v[15] + -0.0825 * v[20] + 0.384 * v[7]; + y[305] = 0.055 * v[9] + y[353]; + v[2] = v[3] * v[16] + v[5] * v[8] + v[17] * v[2]; + y[354] = v[14] + -0.0825 * v[3] + 0.384 * v[5]; + y[306] = 0.055 * v[2] + y[354]; + y[308] = 0.075 * v[1] + y[352]; + y[309] = 0.075 * v[9] + y[353]; + y[310] = 0.075 * v[2] + y[354]; + v[14] = v[12] + 4.89663865010925e-12 * v[0]; + y[312] = -0.22 * v[14] + y[352]; + v[8] = v[7] + 4.89663865010925e-12 * v[10]; + y[313] = -0.22 * v[8] + y[353]; + v[16] = v[5] + 4.89663865010925e-12 * v[17]; + y[314] = -0.22 * v[16] + y[354]; + y[316] = 0.05 * v[1] + -0.18 * v[14] + y[352]; + y[317] = 0.05 * v[9] + -0.18 * v[8] + y[353]; + y[318] = 0.05 * v[2] + -0.18 * v[16] + y[354]; + v[15] = 4.89663865010925e-12 * v[11]; + v[11] = -1. * v[11]; + v[0] = v[13] * v[18] + v[12] * v[15] + v[0] * v[11]; + y[320] = 0.01 * v[0] + 0.08 * v[1] + -0.14 * v[14] + y[352]; + v[10] = v[20] * v[18] + v[7] * v[15] + v[10] * v[11]; + y[321] = 0.01 * v[10] + 0.08 * v[9] + -0.14 * v[8] + y[353]; + v[11] = v[3] * v[18] + v[5] * v[15] + v[17] * v[11]; + y[322] = 0.01 * v[11] + 0.08 * v[2] + -0.14 * v[16] + y[354]; + y[324] = 0.01 * v[0] + 0.085 * v[1] + -0.11 * v[14] + y[352]; + y[325] = 0.01 * v[10] + 0.085 * v[9] + -0.11 * v[8] + y[353]; + y[326] = 0.01 * v[11] + 0.085 * v[2] + -0.11 * v[16] + y[354]; + y[328] = 0.01 * v[0] + 0.09 * v[1] + -0.08 * v[14] + y[352]; + y[329] = 0.01 * v[10] + 0.09 * v[9] + -0.08 * v[8] + y[353]; + y[330] = 0.01 * v[11] + 0.09 * v[2] + -0.08 * v[16] + y[354]; + y[332] = 0.01 * v[0] + 0.095 * v[1] + -0.05 * v[14] + y[352]; + y[333] = 0.01 * v[10] + 0.095 * v[9] + -0.05 * v[8] + y[353]; + y[334] = 0.01 * v[11] + 0.095 * v[2] + -0.05 * v[16] + y[354]; + y[336] = -0.01 * v[0] + 0.08 * v[1] + -0.14 * v[14] + y[352]; + y[337] = -0.01 * v[10] + 0.08 * v[9] + -0.14 * v[8] + y[353]; + y[338] = -0.01 * v[11] + 0.08 * v[2] + -0.14 * v[16] + y[354]; + y[340] = -0.01 * v[0] + 0.085 * v[1] + -0.11 * v[14] + y[352]; + y[341] = -0.01 * v[10] + 0.085 * v[9] + -0.11 * v[8] + y[353]; + y[342] = -0.01 * v[11] + 0.085 * v[2] + -0.11 * v[16] + y[354]; + y[344] = -0.01 * v[0] + 0.09 * v[1] + -0.08 * v[14] + y[352]; + y[345] = -0.01 * v[10] + 0.09 * v[9] + -0.08 * v[8] + y[353]; + y[346] = -0.01 * v[11] + 0.09 * v[2] + -0.08 * v[16] + y[354]; + y[348] = -0.01 * v[0] + 0.095 * v[1] + -0.05 * v[14] + y[352]; + y[349] = -0.01 * v[10] + 0.095 * v[9] + -0.05 * v[8] + y[353]; + y[350] = -0.01 * v[11] + 0.095 * v[2] + -0.05 * v[16] + y[354]; + v[15] = cos(x[12]); + v[18] = sin(x[12]); + v[17] = 4.89663865010925e-12 * v[18]; + v[5] = v[0] * v[15] + v[1] * v[17] + v[14] * v[18]; + v[3] = -v[18]; + v[7] = 4.89663865010925e-12 * v[15]; + v[0] = v[0] * v[3] + v[1] * v[7] + v[14] * v[15]; + y[356] = 0.08 * v[5] + -0.01 * v[0] + y[352]; + v[20] = v[10] * v[15] + v[9] * v[17] + v[8] * v[18]; + v[10] = v[10] * v[3] + v[9] * v[7] + v[8] * v[15]; + y[357] = 0.08 * v[20] + -0.01 * v[10] + y[353]; + v[17] = v[11] * v[15] + v[2] * v[17] + v[16] * v[18]; + v[7] = v[11] * v[3] + v[2] * v[7] + v[16] * v[15]; + y[358] = 0.08 * v[17] + -0.01 * v[7] + y[354]; + y[360] = 0.08 * v[5] + 0.035 * v[0] + y[352]; + y[361] = 0.08 * v[20] + 0.035 * v[10] + y[353]; + y[362] = 0.08 * v[17] + 0.035 * v[7] + y[354]; + v[14] = -1. * v[1] + 4.89663865010925e-12 * v[14]; + v[1] = -1. * v[0] + 4.89663865010925e-12 * v[14]; + v[3] = y[352] + 0.088 * v[5]; + y[364] = 0.07 * v[1] + v[3]; + v[8] = -1. * v[9] + 4.89663865010925e-12 * v[8]; + v[9] = -1. * v[10] + 4.89663865010925e-12 * v[8]; + v[15] = y[353] + 0.088 * v[20]; + y[365] = 0.07 * v[9] + v[15]; + v[16] = -1. * v[2] + 4.89663865010925e-12 * v[16]; + v[2] = -1. * v[7] + 4.89663865010925e-12 * v[16]; + v[11] = y[354] + 0.088 * v[17]; + y[366] = 0.07 * v[2] + v[11]; + v[18] = cos(x[13]); + v[12] = sin(x[13]); + v[13] = 4.89663865010925e-12 * v[12]; + v[6] = v[5] * v[18] + v[0] * v[13] + v[14] * v[12]; + v[21] = -v[12]; + v[19] = 4.89663865010925e-12 * v[18]; + v[14] = v[5] * v[21] + v[0] * v[19] + v[14] * v[18]; + y[368] = 0.02 * v[6] + 0.04 * v[14] + 0.08 * v[1] + v[3]; + v[0] = v[20] * v[18] + v[10] * v[13] + v[8] * v[12]; + v[8] = v[20] * v[21] + v[10] * v[19] + v[8] * v[18]; + y[369] = 0.02 * v[0] + 0.04 * v[8] + 0.08 * v[9] + v[15]; + v[13] = v[17] * v[18] + v[7] * v[13] + v[16] * v[12]; + v[19] = v[17] * v[21] + v[7] * v[19] + v[16] * v[18]; + y[370] = 0.02 * v[13] + 0.04 * v[19] + 0.08 * v[2] + v[11]; + y[372] = 0.04 * v[6] + 0.02 * v[14] + 0.08 * v[1] + v[3]; + y[373] = 0.04 * v[0] + 0.02 * v[8] + 0.08 * v[9] + v[15]; + y[374] = 0.04 * v[13] + 0.02 * v[19] + 0.08 * v[2] + v[11]; + y[376] = 0.04 * v[6] + 0.06 * v[14] + 0.085 * v[1] + v[3]; + y[377] = 0.04 * v[0] + 0.06 * v[8] + 0.085 * v[9] + v[15]; + y[378] = 0.04 * v[13] + 0.06 * v[19] + 0.085 * v[2] + v[11]; + y[380] = 0.06 * v[6] + 0.04 * v[14] + 0.085 * v[1] + v[3]; + y[381] = 0.06 * v[0] + 0.04 * v[8] + 0.085 * v[9] + v[15]; + y[382] = 0.06 * v[13] + 0.04 * v[19] + 0.085 * v[2] + v[11]; + y[384] = -0.0530330085889673 * v[6] + -0.0530330085890148 * v[14] + 0.117 * v[1] + v[3]; + y[385] = -0.0530330085889673 * v[0] + -0.0530330085890148 * v[8] + 0.117 * v[9] + v[15]; + y[386] = -0.0530330085889673 * v[13] + -0.0530330085890148 * v[19] + 0.117 * v[2] + v[11]; + y[388] = -0.0318198051533804 * v[6] + -0.0318198051534089 * v[14] + 0.117 * v[1] + v[3]; + y[389] = -0.0318198051533804 * v[0] + -0.0318198051534089 * v[8] + 0.117 * v[9] + v[15]; + y[390] = -0.0318198051533804 * v[13] + -0.0318198051534089 * v[19] + 0.117 * v[2] + v[11]; + y[392] = -0.0106066017177935 * v[6] + -0.010606601717803 * v[14] + 0.117 * v[1] + v[3]; + y[393] = -0.0106066017177935 * v[0] + -0.010606601717803 * v[8] + 0.117 * v[9] + v[15]; + y[394] = -0.0106066017177935 * v[13] + -0.010606601717803 * v[19] + 0.117 * v[2] + v[11]; + y[396] = 0.0106066017177935 * v[6] + 0.010606601717803 * v[14] + 0.117 * v[1] + v[3]; + y[397] = 0.0106066017177935 * v[0] + 0.010606601717803 * v[8] + 0.117 * v[9] + v[15]; + y[398] = 0.0106066017177935 * v[13] + 0.010606601717803 * v[19] + 0.117 * v[2] + v[11]; + y[400] = 0.0318198051533804 * v[6] + 0.0318198051534089 * v[14] + 0.117 * v[1] + v[3]; + y[401] = 0.0318198051533804 * v[0] + 0.0318198051534089 * v[8] + 0.117 * v[9] + v[15]; + y[402] = 0.0318198051533804 * v[13] + 0.0318198051534089 * v[19] + 0.117 * v[2] + v[11]; + y[404] = 0.0530330085889673 * v[6] + 0.0530330085890148 * v[14] + 0.117 * v[1] + v[3]; + y[405] = 0.0530330085889673 * v[0] + 0.0530330085890148 * v[8] + 0.117 * v[9] + v[15]; + y[406] = 0.0530330085889673 * v[13] + 0.0530330085890148 * v[19] + 0.117 * v[2] + v[11]; + y[408] = -0.0530330085889673 * v[6] + -0.0530330085890148 * v[14] + 0.137 * v[1] + v[3]; + y[409] = -0.0530330085889673 * v[0] + -0.0530330085890148 * v[8] + 0.137 * v[9] + v[15]; + y[410] = -0.0530330085889673 * v[13] + -0.0530330085890148 * v[19] + 0.137 * v[2] + v[11]; + y[412] = -0.0318198051533804 * v[6] + -0.0318198051534089 * v[14] + 0.137 * v[1] + v[3]; + y[413] = -0.0318198051533804 * v[0] + -0.0318198051534089 * v[8] + 0.137 * v[9] + v[15]; + y[414] = -0.0318198051533804 * v[13] + -0.0318198051534089 * v[19] + 0.137 * v[2] + v[11]; + y[416] = -0.0106066017177935 * v[6] + -0.010606601717803 * v[14] + 0.137 * v[1] + v[3]; + y[417] = -0.0106066017177935 * v[0] + -0.010606601717803 * v[8] + 0.137 * v[9] + v[15]; + y[418] = -0.0106066017177935 * v[13] + -0.010606601717803 * v[19] + 0.137 * v[2] + v[11]; + y[420] = 0.0106066017177935 * v[6] + 0.010606601717803 * v[14] + 0.137 * v[1] + v[3]; + y[421] = 0.0106066017177935 * v[0] + 0.010606601717803 * v[8] + 0.137 * v[9] + v[15]; + y[422] = 0.0106066017177935 * v[13] + 0.010606601717803 * v[19] + 0.137 * v[2] + v[11]; + y[424] = 0.0318198051533804 * v[6] + 0.0318198051534089 * v[14] + 0.137 * v[1] + v[3]; + y[425] = 0.0318198051533804 * v[0] + 0.0318198051534089 * v[8] + 0.137 * v[9] + v[15]; + y[426] = 0.0318198051533804 * v[13] + 0.0318198051534089 * v[19] + 0.137 * v[2] + v[11]; + y[428] = 0.0530330085889673 * v[6] + 0.0530330085890148 * v[14] + 0.137 * v[1] + v[3]; + y[429] = 0.0530330085889673 * v[0] + 0.0530330085890148 * v[8] + 0.137 * v[9] + v[15]; + y[430] = 0.0530330085889673 * v[13] + 0.0530330085890148 * v[19] + 0.137 * v[2] + v[11]; + y[432] = -0.0530330085889673 * v[6] + -0.0530330085890148 * v[14] + 0.157 * v[1] + v[3]; + y[433] = -0.0530330085889673 * v[0] + -0.0530330085890148 * v[8] + 0.157 * v[9] + v[15]; + y[434] = -0.0530330085889673 * v[13] + -0.0530330085890148 * v[19] + 0.157 * v[2] + v[11]; + y[436] = -0.0318198051533804 * v[6] + -0.0318198051534089 * v[14] + 0.157 * v[1] + v[3]; + y[437] = -0.0318198051533804 * v[0] + -0.0318198051534089 * v[8] + 0.157 * v[9] + v[15]; + y[438] = -0.0318198051533804 * v[13] + -0.0318198051534089 * v[19] + 0.157 * v[2] + v[11]; + y[440] = -0.0106066017177935 * v[6] + -0.010606601717803 * v[14] + 0.157 * v[1] + v[3]; + y[441] = -0.0106066017177935 * v[0] + -0.010606601717803 * v[8] + 0.157 * v[9] + v[15]; + y[442] = -0.0106066017177935 * v[13] + -0.010606601717803 * v[19] + 0.157 * v[2] + v[11]; + y[444] = 0.0106066017177935 * v[6] + 0.010606601717803 * v[14] + 0.157 * v[1] + v[3]; + y[445] = 0.0106066017177935 * v[0] + 0.010606601717803 * v[8] + 0.157 * v[9] + v[15]; + y[446] = 0.0106066017177935 * v[13] + 0.010606601717803 * v[19] + 0.157 * v[2] + v[11]; + y[448] = 0.0318198051533804 * v[6] + 0.0318198051534089 * v[14] + 0.157 * v[1] + v[3]; + y[449] = 0.0318198051533804 * v[0] + 0.0318198051534089 * v[8] + 0.157 * v[9] + v[15]; + y[450] = 0.0318198051533804 * v[13] + 0.0318198051534089 * v[19] + 0.157 * v[2] + v[11]; + y[452] = 0.0530330085889673 * v[6] + 0.0530330085890148 * v[14] + 0.157 * v[1] + v[3]; + y[453] = 0.0530330085889673 * v[0] + 0.0530330085890148 * v[8] + 0.157 * v[9] + v[15]; + y[454] = 0.0530330085889673 * v[13] + 0.0530330085890148 * v[19] + 0.157 * v[2] + v[11]; + y[456] = 0.0565685424948984 * v[6] + 0.0565685424949492 * v[14] + 0.1874 * v[1] + v[3]; + y[457] = 0.0565685424948984 * v[0] + 0.0565685424949492 * v[8] + 0.1874 * v[9] + v[15]; + y[458] = 0.0565685424948984 * v[13] + 0.0565685424949492 * v[19] + 0.1874 * v[2] + v[11]; + y[460] = 0.0516187950265948 * v[6] + 0.0516187950266411 * v[14] + 0.2094 * v[1] + v[3]; + y[461] = 0.0516187950265948 * v[0] + 0.0516187950266411 * v[8] + 0.2094 * v[9] + v[15]; + y[462] = 0.0516187950265948 * v[13] + 0.0516187950266411 * v[19] + 0.2094 * v[2] + v[11]; + y[464] = -0.0565685424948984 * v[6] + -0.0565685424949492 * v[14] + 0.1874 * v[1] + v[3]; + y[465] = -0.0565685424948984 * v[0] + -0.0565685424949492 * v[8] + 0.1874 * v[9] + v[15]; + y[466] = -0.0565685424948984 * v[13] + -0.0565685424949492 * v[19] + 0.1874 * v[2] + v[11]; + y[468] = -0.0516187950265948 * v[6] + -0.0516187950266411 * v[14] + 0.2094 * v[1] + v[3]; + y[469] = -0.0516187950265948 * v[0] + -0.0516187950266411 * v[8] + 0.2094 * v[9] + v[15]; + y[470] = -0.0516187950265948 * v[13] + -0.0516187950266411 * v[19] + 0.2094 * v[2] + v[11]; + // dependent variables without operations + y[0] = 0.; + y[1] = -0.2875; + y[2] = 0.05; + y[3] = 0.0799999982118607; + y[6] = 0.333; + y[7] = 0.0599999986588955; + y[10] = 0.333; + y[11] = 0.0599999986588955; + y[12] = 0.; + y[13] = -0.2875; + y[14] = 0.213; + y[15] = 0.0599999986588955; + y[16] = 0.; + y[17] = -0.2875; + y[18] = 0.163; + y[19] = 0.0599999986588955; + y[22] = 0.333000000000147; + y[23] = 0.0599999986588955; + y[26] = 0.333000000000392; + y[27] = 0.0599999986588955; + y[31] = 0.0599999986588955; + y[35] = 0.0599999986588955; + y[39] = 0.0599999986588955; + y[43] = 0.0500000007450581; + y[47] = 0.0549999997019768; + y[51] = 0.0549999997019768; + y[55] = 0.0599999986588955; + y[59] = 0.0549999997019768; + y[63] = 0.0549999997019768; + y[67] = 0.0549999997019768; + y[71] = 0.0599999986588955; + y[75] = 0.0599999986588955; + y[79] = 0.0599999986588955; + y[83] = 0.0500000007450581; + y[87] = 0.025000000372529; + y[91] = 0.025000000372529; + y[95] = 0.025000000372529; + y[99] = 0.025000000372529; + y[103] = 0.025000000372529; + y[107] = 0.025000000372529; + y[111] = 0.025000000372529; + y[115] = 0.025000000372529; + y[119] = 0.0500000007450581; + y[123] = 0.0500000007450581; + y[127] = 0.0520000010728836; + y[131] = 0.0500000007450581; + y[135] = 0.025000000372529; + y[139] = 0.025000000372529; + y[143] = 0.0199999995529652; + y[147] = 0.0199999995529652; + y[151] = 0.0280000008642673; + y[155] = 0.0280000008642673; + y[159] = 0.0280000008642673; + y[163] = 0.0280000008642673; + y[167] = 0.0280000008642673; + y[171] = 0.0280000008642673; + y[175] = 0.0260000005364418; + y[179] = 0.0260000005364418; + y[183] = 0.0260000005364418; + y[187] = 0.0260000005364418; + y[191] = 0.0260000005364418; + y[195] = 0.0260000005364418; + y[199] = 0.0240000002086163; + y[203] = 0.0240000002086163; + y[207] = 0.0240000002086163; + y[211] = 0.0240000002086163; + y[215] = 0.0240000002086163; + y[219] = 0.0240000002086163; + y[223] = 0.0120000001043081; + y[227] = 0.0120000001043081; + y[231] = 0.0120000001043081; + y[235] = 0.0120000001043081; + y[236] = 0.; + y[237] = 0.2875; + y[238] = 0.05; + y[239] = 0.0799999982118607; + y[242] = 0.333; + y[243] = 0.0599999986588955; + y[246] = 0.333; + y[247] = 0.0599999986588955; + y[248] = 0.; + y[249] = 0.2875; + y[250] = 0.213; + y[251] = 0.0599999986588955; + y[252] = 0.; + y[253] = 0.2875; + y[254] = 0.163; + y[255] = 0.0599999986588955; + y[258] = 0.333000000000147; + y[259] = 0.0599999986588955; + y[262] = 0.333000000000392; + y[263] = 0.0599999986588955; + y[267] = 0.0599999986588955; + y[271] = 0.0599999986588955; + y[275] = 0.0599999986588955; + y[279] = 0.0500000007450581; + y[283] = 0.0549999997019768; + y[287] = 0.0549999997019768; + y[291] = 0.0599999986588955; + y[295] = 0.0549999997019768; + y[299] = 0.0549999997019768; + y[303] = 0.0549999997019768; + y[307] = 0.0599999986588955; + y[311] = 0.0599999986588955; + y[315] = 0.0599999986588955; + y[319] = 0.0500000007450581; + y[323] = 0.025000000372529; + y[327] = 0.025000000372529; + y[331] = 0.025000000372529; + y[335] = 0.025000000372529; + y[339] = 0.025000000372529; + y[343] = 0.025000000372529; + y[347] = 0.025000000372529; + y[351] = 0.025000000372529; + y[355] = 0.0500000007450581; + y[359] = 0.0500000007450581; + y[363] = 0.0520000010728836; + y[367] = 0.0500000007450581; + y[371] = 0.025000000372529; + y[375] = 0.025000000372529; + y[379] = 0.0199999995529652; + y[383] = 0.0199999995529652; + y[387] = 0.0280000008642673; + y[391] = 0.0280000008642673; + y[395] = 0.0280000008642673; + y[399] = 0.0280000008642673; + y[403] = 0.0280000008642673; + y[407] = 0.0280000008642673; + y[411] = 0.0260000005364418; + y[415] = 0.0260000005364418; + y[419] = 0.0260000005364418; + y[423] = 0.0260000005364418; + y[427] = 0.0260000005364418; + y[431] = 0.0260000005364418; + y[435] = 0.0240000002086163; + y[439] = 0.0240000002086163; + y[443] = 0.0240000002086163; + y[447] = 0.0240000002086163; + y[451] = 0.0240000002086163; + y[455] = 0.0240000002086163; + y[459] = 0.0120000001043081; + y[463] = 0.0120000001043081; + y[467] = 0.0120000001043081; + y[471] = 0.0120000001043081; + + for (auto i = 0U; i < 118; ++i) + { + out.x[i] = y[i * 4 + 0]; + out.y[i] = y[i * 4 + 1]; + out.z[i] = y[i * 4 + 2]; + out.r[i] = y[i * 4 + 3]; + } + } + + using Debug = std:: + pair>, std::vector>>; + + template + inline static auto fkcc_debug( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept -> Debug + { + std::array, 110> v; + std::array, 560> y; + + v[0] = sin(x[0]); + v[1] = -v[0]; + y[4] = -0.08 * v[1]; + v[2] = cos(x[0]); + y[5] = -0.2875 + -0.08 * v[2]; + y[8] = -0.03 * v[1]; + y[9] = -0.2875 + -0.03 * v[2]; + y[20] = 0.03 * v[1]; + y[21] = -0.2875 + 0.03 * v[2]; + y[24] = 0.08 * v[1]; + y[25] = -0.2875 + 0.08 * v[2]; + v[3] = sin(x[1]); + v[4] = -v[3]; + v[5] = cos(x[1]); + v[6] = 4.89663865010925e-12 * v[5]; + v[7] = v[2] * v[4] + v[1] * v[6]; + y[28] = -0.12 * v[7]; + v[6] = v[0] * v[4] + v[2] * v[6]; + y[29] = -0.2875 + -0.12 * v[6]; + v[4] = -1. * v[5]; + y[30] = 0.333 + -0.12 * v[4]; + y[32] = -0.17 * v[7]; + y[33] = -0.2875 + -0.17 * v[6]; + y[34] = 0.333 + -0.17 * v[4]; + v[8] = -1. * v[7] + 4.89663865010925e-12 * v[1]; + v[9] = -0.316 * v[7]; + y[36] = -0.1 * v[8] + v[9]; + v[10] = -1. * v[6] + 4.89663865010925e-12 * v[2]; + v[11] = -0.2875 + -0.316 * v[6]; + y[37] = -0.1 * v[10] + v[11]; + v[12] = 2.39770700697438e-23 + -1. * v[4]; + v[13] = 0.333 + -0.316 * v[4]; + y[38] = -0.1 * v[12] + v[13]; + y[40] = -0.06 * v[8] + v[9]; + y[41] = -0.06 * v[10] + v[11]; + y[42] = -0.06 * v[12] + v[13]; + v[14] = 4.89663865010925e-12 * v[3]; + v[15] = v[2] * v[5] + v[1] * v[14]; + v[16] = cos(x[2]); + v[17] = sin(x[2]); + v[18] = 4.89663865010925e-12 * v[17]; + v[19] = v[15] * v[16] + v[7] * v[18] + v[1] * v[17]; + v[20] = -v[17]; + v[21] = 4.89663865010925e-12 * v[16]; + v[15] = v[15] * v[20] + v[7] * v[21] + v[1] * v[16]; + y[44] = 0.08 * v[19] + 0.06 * v[15] + v[9]; + v[14] = v[0] * v[5] + v[2] * v[14]; + v[5] = v[14] * v[16] + v[6] * v[18] + v[2] * v[17]; + v[14] = v[14] * v[20] + v[6] * v[21] + v[2] * v[16]; + y[45] = 0.08 * v[5] + 0.06 * v[14] + v[11]; + v[3] = -1. * v[3]; + v[18] = v[3] * v[16] + v[4] * v[18] + 4.89663865010925e-12 * v[17]; + v[3] = v[3] * v[20] + v[4] * v[21] + 4.89663865010925e-12 * v[16]; + y[46] = 0.08 * v[18] + 0.06 * v[3] + v[13]; + y[48] = 0.08 * v[19] + 0.02 * v[15] + v[9]; + y[49] = 0.08 * v[5] + 0.02 * v[14] + v[11]; + y[50] = 0.08 * v[18] + 0.02 * v[3] + v[13]; + v[21] = cos(x[3]); + v[20] = sin(x[3]); + v[16] = 4.89663865010925e-12 * v[20]; + v[17] = v[19] * v[21] + v[15] * v[16] + v[8] * v[20]; + v[0] = -v[20]; + v[22] = 4.89663865010925e-12 * v[21]; + v[23] = v[19] * v[0] + v[15] * v[22] + v[8] * v[21]; + v[24] = v[9] + 0.0825 * v[19]; + y[52] = -0.08 * v[17] + 0.095 * v[23] + v[24]; + v[25] = v[5] * v[21] + v[14] * v[16] + v[10] * v[20]; + v[26] = v[5] * v[0] + v[14] * v[22] + v[10] * v[21]; + v[27] = v[11] + 0.0825 * v[5]; + y[53] = -0.08 * v[25] + 0.095 * v[26] + v[27]; + v[16] = v[18] * v[21] + v[3] * v[16] + v[12] * v[20]; + v[22] = v[18] * v[0] + v[3] * v[22] + v[12] * v[21]; + v[0] = v[13] + 0.0825 * v[18]; + y[54] = -0.08 * v[16] + 0.095 * v[22] + v[0]; + v[21] = -1. * v[15] + 4.89663865010925e-12 * v[8]; + y[56] = 0.02 * v[21] + v[24]; + v[20] = -1. * v[14] + 4.89663865010925e-12 * v[10]; + y[57] = 0.02 * v[20] + v[27]; + v[28] = -1. * v[3] + 4.89663865010925e-12 * v[12]; + y[58] = 0.02 * v[28] + v[0]; + y[60] = 0.06 * v[21] + v[24]; + y[61] = 0.06 * v[20] + v[27]; + y[62] = 0.06 * v[28] + v[0]; + y[64] = -0.08 * v[17] + 0.06 * v[23] + v[24]; + y[65] = -0.08 * v[25] + 0.06 * v[26] + v[27]; + y[66] = -0.08 * v[16] + 0.06 * v[22] + v[0]; + v[29] = sin(x[4]); + v[30] = -v[29]; + v[31] = cos(x[4]); + v[32] = 4.89663865010925e-12 * v[31]; + v[33] = -1. * v[31]; + v[34] = v[17] * v[30] + v[23] * v[32] + v[21] * v[33]; + y[116] = v[24] + -0.0825 * v[17] + 0.384 * v[23]; + y[68] = 0.055 * v[34] + y[116]; + v[35] = v[25] * v[30] + v[26] * v[32] + v[20] * v[33]; + y[117] = v[27] + -0.0825 * v[25] + 0.384 * v[26]; + y[69] = 0.055 * v[35] + y[117]; + v[33] = v[16] * v[30] + v[22] * v[32] + v[28] * v[33]; + y[118] = v[0] + -0.0825 * v[16] + 0.384 * v[22]; + y[70] = 0.055 * v[33] + y[118]; + y[72] = 0.075 * v[34] + y[116]; + y[73] = 0.075 * v[35] + y[117]; + y[74] = 0.075 * v[33] + y[118]; + v[32] = v[23] + 4.89663865010925e-12 * v[21]; + y[76] = -0.22 * v[32] + y[116]; + v[30] = v[26] + 4.89663865010925e-12 * v[20]; + y[77] = -0.22 * v[30] + y[117]; + v[36] = v[22] + 4.89663865010925e-12 * v[28]; + y[78] = -0.22 * v[36] + y[118]; + y[80] = 0.05 * v[34] + -0.18 * v[32] + y[116]; + y[81] = 0.05 * v[35] + -0.18 * v[30] + y[117]; + y[82] = 0.05 * v[33] + -0.18 * v[36] + y[118]; + v[37] = 4.89663865010925e-12 * v[29]; + v[29] = -1. * v[29]; + v[38] = v[17] * v[31] + v[23] * v[37] + v[21] * v[29]; + y[84] = 0.01 * v[38] + 0.08 * v[34] + -0.14 * v[32] + y[116]; + v[39] = v[25] * v[31] + v[26] * v[37] + v[20] * v[29]; + y[85] = 0.01 * v[39] + 0.08 * v[35] + -0.14 * v[30] + y[117]; + v[29] = v[16] * v[31] + v[22] * v[37] + v[28] * v[29]; + y[86] = 0.01 * v[29] + 0.08 * v[33] + -0.14 * v[36] + y[118]; + y[88] = 0.01 * v[38] + 0.085 * v[34] + -0.11 * v[32] + y[116]; + y[89] = 0.01 * v[39] + 0.085 * v[35] + -0.11 * v[30] + y[117]; + y[90] = 0.01 * v[29] + 0.085 * v[33] + -0.11 * v[36] + y[118]; + y[92] = 0.01 * v[38] + 0.09 * v[34] + -0.08 * v[32] + y[116]; + y[93] = 0.01 * v[39] + 0.09 * v[35] + -0.08 * v[30] + y[117]; + y[94] = 0.01 * v[29] + 0.09 * v[33] + -0.08 * v[36] + y[118]; + y[96] = 0.01 * v[38] + 0.095 * v[34] + -0.05 * v[32] + y[116]; + y[97] = 0.01 * v[39] + 0.095 * v[35] + -0.05 * v[30] + y[117]; + y[98] = 0.01 * v[29] + 0.095 * v[33] + -0.05 * v[36] + y[118]; + y[100] = -0.01 * v[38] + 0.08 * v[34] + -0.14 * v[32] + y[116]; + y[101] = -0.01 * v[39] + 0.08 * v[35] + -0.14 * v[30] + y[117]; + y[102] = -0.01 * v[29] + 0.08 * v[33] + -0.14 * v[36] + y[118]; + y[104] = -0.01 * v[38] + 0.085 * v[34] + -0.11 * v[32] + y[116]; + y[105] = -0.01 * v[39] + 0.085 * v[35] + -0.11 * v[30] + y[117]; + y[106] = -0.01 * v[29] + 0.085 * v[33] + -0.11 * v[36] + y[118]; + y[108] = -0.01 * v[38] + 0.09 * v[34] + -0.08 * v[32] + y[116]; + y[109] = -0.01 * v[39] + 0.09 * v[35] + -0.08 * v[30] + y[117]; + y[110] = -0.01 * v[29] + 0.09 * v[33] + -0.08 * v[36] + y[118]; + y[112] = -0.01 * v[38] + 0.095 * v[34] + -0.05 * v[32] + y[116]; + y[113] = -0.01 * v[39] + 0.095 * v[35] + -0.05 * v[30] + y[117]; + y[114] = -0.01 * v[29] + 0.095 * v[33] + -0.05 * v[36] + y[118]; + v[37] = cos(x[5]); + v[31] = sin(x[5]); + v[40] = 4.89663865010925e-12 * v[31]; + v[41] = v[38] * v[37] + v[34] * v[40] + v[32] * v[31]; + v[42] = -v[31]; + v[43] = 4.89663865010925e-12 * v[37]; + v[38] = v[38] * v[42] + v[34] * v[43] + v[32] * v[37]; + y[120] = 0.08 * v[41] + -0.01 * v[38] + y[116]; + v[44] = v[39] * v[37] + v[35] * v[40] + v[30] * v[31]; + v[39] = v[39] * v[42] + v[35] * v[43] + v[30] * v[37]; + y[121] = 0.08 * v[44] + -0.01 * v[39] + y[117]; + v[40] = v[29] * v[37] + v[33] * v[40] + v[36] * v[31]; + v[43] = v[29] * v[42] + v[33] * v[43] + v[36] * v[37]; + y[122] = 0.08 * v[40] + -0.01 * v[43] + y[118]; + y[124] = 0.08 * v[41] + 0.035 * v[38] + y[116]; + y[125] = 0.08 * v[44] + 0.035 * v[39] + y[117]; + y[126] = 0.08 * v[40] + 0.035 * v[43] + y[118]; + v[42] = -1. * v[34] + 4.89663865010925e-12 * v[32]; + v[37] = -1. * v[38] + 4.89663865010925e-12 * v[42]; + v[29] = y[116] + 0.088 * v[41]; + y[128] = 0.07 * v[37] + v[29]; + v[31] = -1. * v[35] + 4.89663865010925e-12 * v[30]; + v[45] = -1. * v[39] + 4.89663865010925e-12 * v[31]; + v[46] = y[117] + 0.088 * v[44]; + y[129] = 0.07 * v[45] + v[46]; + v[47] = -1. * v[33] + 4.89663865010925e-12 * v[36]; + v[48] = -1. * v[43] + 4.89663865010925e-12 * v[47]; + v[49] = y[118] + 0.088 * v[40]; + y[130] = 0.07 * v[48] + v[49]; + v[50] = cos(x[6]); + v[51] = sin(x[6]); + v[52] = 4.89663865010925e-12 * v[51]; + v[53] = v[41] * v[50] + v[38] * v[52] + v[42] * v[51]; + v[54] = -v[51]; + v[55] = 4.89663865010925e-12 * v[50]; + v[42] = v[41] * v[54] + v[38] * v[55] + v[42] * v[50]; + y[132] = 0.02 * v[53] + 0.04 * v[42] + 0.08 * v[37] + v[29]; + v[56] = v[44] * v[50] + v[39] * v[52] + v[31] * v[51]; + v[31] = v[44] * v[54] + v[39] * v[55] + v[31] * v[50]; + y[133] = 0.02 * v[56] + 0.04 * v[31] + 0.08 * v[45] + v[46]; + v[52] = v[40] * v[50] + v[43] * v[52] + v[47] * v[51]; + v[55] = v[40] * v[54] + v[43] * v[55] + v[47] * v[50]; + y[134] = 0.02 * v[52] + 0.04 * v[55] + 0.08 * v[48] + v[49]; + y[136] = 0.04 * v[53] + 0.02 * v[42] + 0.08 * v[37] + v[29]; + y[137] = 0.04 * v[56] + 0.02 * v[31] + 0.08 * v[45] + v[46]; + y[138] = 0.04 * v[52] + 0.02 * v[55] + 0.08 * v[48] + v[49]; + y[140] = 0.04 * v[53] + 0.06 * v[42] + 0.085 * v[37] + v[29]; + y[141] = 0.04 * v[56] + 0.06 * v[31] + 0.085 * v[45] + v[46]; + y[142] = 0.04 * v[52] + 0.06 * v[55] + 0.085 * v[48] + v[49]; + y[144] = 0.06 * v[53] + 0.04 * v[42] + 0.085 * v[37] + v[29]; + y[145] = 0.06 * v[56] + 0.04 * v[31] + 0.085 * v[45] + v[46]; + y[146] = 0.06 * v[52] + 0.04 * v[55] + 0.085 * v[48] + v[49]; + y[148] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[42] + 0.117 * v[37] + v[29]; + y[149] = -0.0530330085889673 * v[56] + -0.0530330085890148 * v[31] + 0.117 * v[45] + v[46]; + y[150] = -0.0530330085889673 * v[52] + -0.0530330085890148 * v[55] + 0.117 * v[48] + v[49]; + y[152] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[42] + 0.117 * v[37] + v[29]; + y[153] = -0.0318198051533804 * v[56] + -0.0318198051534089 * v[31] + 0.117 * v[45] + v[46]; + y[154] = -0.0318198051533804 * v[52] + -0.0318198051534089 * v[55] + 0.117 * v[48] + v[49]; + y[156] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[42] + 0.117 * v[37] + v[29]; + y[157] = -0.0106066017177935 * v[56] + -0.010606601717803 * v[31] + 0.117 * v[45] + v[46]; + y[158] = -0.0106066017177935 * v[52] + -0.010606601717803 * v[55] + 0.117 * v[48] + v[49]; + y[160] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[42] + 0.117 * v[37] + v[29]; + y[161] = 0.0106066017177935 * v[56] + 0.010606601717803 * v[31] + 0.117 * v[45] + v[46]; + y[162] = 0.0106066017177935 * v[52] + 0.010606601717803 * v[55] + 0.117 * v[48] + v[49]; + y[164] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[42] + 0.117 * v[37] + v[29]; + y[165] = 0.0318198051533804 * v[56] + 0.0318198051534089 * v[31] + 0.117 * v[45] + v[46]; + y[166] = 0.0318198051533804 * v[52] + 0.0318198051534089 * v[55] + 0.117 * v[48] + v[49]; + y[168] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[42] + 0.117 * v[37] + v[29]; + y[169] = 0.0530330085889673 * v[56] + 0.0530330085890148 * v[31] + 0.117 * v[45] + v[46]; + y[170] = 0.0530330085889673 * v[52] + 0.0530330085890148 * v[55] + 0.117 * v[48] + v[49]; + y[172] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[42] + 0.137 * v[37] + v[29]; + y[173] = -0.0530330085889673 * v[56] + -0.0530330085890148 * v[31] + 0.137 * v[45] + v[46]; + y[174] = -0.0530330085889673 * v[52] + -0.0530330085890148 * v[55] + 0.137 * v[48] + v[49]; + y[176] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[42] + 0.137 * v[37] + v[29]; + y[177] = -0.0318198051533804 * v[56] + -0.0318198051534089 * v[31] + 0.137 * v[45] + v[46]; + y[178] = -0.0318198051533804 * v[52] + -0.0318198051534089 * v[55] + 0.137 * v[48] + v[49]; + y[180] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[42] + 0.137 * v[37] + v[29]; + y[181] = -0.0106066017177935 * v[56] + -0.010606601717803 * v[31] + 0.137 * v[45] + v[46]; + y[182] = -0.0106066017177935 * v[52] + -0.010606601717803 * v[55] + 0.137 * v[48] + v[49]; + y[184] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[42] + 0.137 * v[37] + v[29]; + y[185] = 0.0106066017177935 * v[56] + 0.010606601717803 * v[31] + 0.137 * v[45] + v[46]; + y[186] = 0.0106066017177935 * v[52] + 0.010606601717803 * v[55] + 0.137 * v[48] + v[49]; + y[188] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[42] + 0.137 * v[37] + v[29]; + y[189] = 0.0318198051533804 * v[56] + 0.0318198051534089 * v[31] + 0.137 * v[45] + v[46]; + y[190] = 0.0318198051533804 * v[52] + 0.0318198051534089 * v[55] + 0.137 * v[48] + v[49]; + y[192] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[42] + 0.137 * v[37] + v[29]; + y[193] = 0.0530330085889673 * v[56] + 0.0530330085890148 * v[31] + 0.137 * v[45] + v[46]; + y[194] = 0.0530330085889673 * v[52] + 0.0530330085890148 * v[55] + 0.137 * v[48] + v[49]; + y[196] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[42] + 0.157 * v[37] + v[29]; + y[197] = -0.0530330085889673 * v[56] + -0.0530330085890148 * v[31] + 0.157 * v[45] + v[46]; + y[198] = -0.0530330085889673 * v[52] + -0.0530330085890148 * v[55] + 0.157 * v[48] + v[49]; + y[200] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[42] + 0.157 * v[37] + v[29]; + y[201] = -0.0318198051533804 * v[56] + -0.0318198051534089 * v[31] + 0.157 * v[45] + v[46]; + y[202] = -0.0318198051533804 * v[52] + -0.0318198051534089 * v[55] + 0.157 * v[48] + v[49]; + y[204] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[42] + 0.157 * v[37] + v[29]; + y[205] = -0.0106066017177935 * v[56] + -0.010606601717803 * v[31] + 0.157 * v[45] + v[46]; + y[206] = -0.0106066017177935 * v[52] + -0.010606601717803 * v[55] + 0.157 * v[48] + v[49]; + y[208] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[42] + 0.157 * v[37] + v[29]; + y[209] = 0.0106066017177935 * v[56] + 0.010606601717803 * v[31] + 0.157 * v[45] + v[46]; + y[210] = 0.0106066017177935 * v[52] + 0.010606601717803 * v[55] + 0.157 * v[48] + v[49]; + y[212] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[42] + 0.157 * v[37] + v[29]; + y[213] = 0.0318198051533804 * v[56] + 0.0318198051534089 * v[31] + 0.157 * v[45] + v[46]; + y[214] = 0.0318198051533804 * v[52] + 0.0318198051534089 * v[55] + 0.157 * v[48] + v[49]; + y[216] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[42] + 0.157 * v[37] + v[29]; + y[217] = 0.0530330085889673 * v[56] + 0.0530330085890148 * v[31] + 0.157 * v[45] + v[46]; + y[218] = 0.0530330085889673 * v[52] + 0.0530330085890148 * v[55] + 0.157 * v[48] + v[49]; + y[220] = 0.0565685424948984 * v[53] + 0.0565685424949492 * v[42] + 0.1874 * v[37] + v[29]; + y[221] = 0.0565685424948984 * v[56] + 0.0565685424949492 * v[31] + 0.1874 * v[45] + v[46]; + y[222] = 0.0565685424948984 * v[52] + 0.0565685424949492 * v[55] + 0.1874 * v[48] + v[49]; + y[224] = 0.0516187950265948 * v[53] + 0.0516187950266411 * v[42] + 0.2094 * v[37] + v[29]; + y[225] = 0.0516187950265948 * v[56] + 0.0516187950266411 * v[31] + 0.2094 * v[45] + v[46]; + y[226] = 0.0516187950265948 * v[52] + 0.0516187950266411 * v[55] + 0.2094 * v[48] + v[49]; + y[228] = -0.0565685424948984 * v[53] + -0.0565685424949492 * v[42] + 0.1874 * v[37] + v[29]; + y[229] = -0.0565685424948984 * v[56] + -0.0565685424949492 * v[31] + 0.1874 * v[45] + v[46]; + y[230] = -0.0565685424948984 * v[52] + -0.0565685424949492 * v[55] + 0.1874 * v[48] + v[49]; + y[232] = -0.0516187950265948 * v[53] + -0.0516187950266411 * v[42] + 0.2094 * v[37] + v[29]; + y[233] = -0.0516187950265948 * v[56] + -0.0516187950266411 * v[31] + 0.2094 * v[45] + v[46]; + y[234] = -0.0516187950265948 * v[52] + -0.0516187950266411 * v[55] + 0.2094 * v[48] + v[49]; + v[54] = sin(x[7]); + v[50] = -v[54]; + y[240] = -0.08 * v[50]; + v[47] = cos(x[7]); + y[241] = 0.2875 + -0.08 * v[47]; + y[244] = -0.03 * v[50]; + y[245] = 0.2875 + -0.03 * v[47]; + y[256] = 0.03 * v[50]; + y[257] = 0.2875 + 0.03 * v[47]; + y[260] = 0.08 * v[50]; + y[261] = 0.2875 + 0.08 * v[47]; + v[51] = sin(x[8]); + v[57] = -v[51]; + v[58] = cos(x[8]); + v[59] = 4.89663865010925e-12 * v[58]; + v[60] = v[47] * v[57] + v[50] * v[59]; + y[264] = -0.12 * v[60]; + v[59] = v[54] * v[57] + v[47] * v[59]; + y[265] = 0.2875 + -0.12 * v[59]; + v[57] = -1. * v[58]; + y[266] = 0.333 + -0.12 * v[57]; + y[268] = -0.17 * v[60]; + y[269] = 0.2875 + -0.17 * v[59]; + y[270] = 0.333 + -0.17 * v[57]; + v[61] = -1. * v[60] + 4.89663865010925e-12 * v[50]; + v[62] = -0.316 * v[60]; + y[272] = -0.1 * v[61] + v[62]; + v[63] = -1. * v[59] + 4.89663865010925e-12 * v[47]; + v[64] = 0.2875 + -0.316 * v[59]; + y[273] = -0.1 * v[63] + v[64]; + v[65] = 2.39770700697438e-23 + -1. * v[57]; + v[66] = 0.333 + -0.316 * v[57]; + y[274] = -0.1 * v[65] + v[66]; + y[276] = -0.06 * v[61] + v[62]; + y[277] = -0.06 * v[63] + v[64]; + y[278] = -0.06 * v[65] + v[66]; + v[67] = 4.89663865010925e-12 * v[51]; + v[68] = v[47] * v[58] + v[50] * v[67]; + v[69] = cos(x[9]); + v[70] = sin(x[9]); + v[71] = 4.89663865010925e-12 * v[70]; + v[72] = v[68] * v[69] + v[60] * v[71] + v[50] * v[70]; + v[73] = -v[70]; + v[74] = 4.89663865010925e-12 * v[69]; + v[68] = v[68] * v[73] + v[60] * v[74] + v[50] * v[69]; + y[280] = 0.08 * v[72] + 0.06 * v[68] + v[62]; + v[67] = v[54] * v[58] + v[47] * v[67]; + v[58] = v[67] * v[69] + v[59] * v[71] + v[47] * v[70]; + v[67] = v[67] * v[73] + v[59] * v[74] + v[47] * v[69]; + y[281] = 0.08 * v[58] + 0.06 * v[67] + v[64]; + v[51] = -1. * v[51]; + v[71] = v[51] * v[69] + v[57] * v[71] + 4.89663865010925e-12 * v[70]; + v[51] = v[51] * v[73] + v[57] * v[74] + 4.89663865010925e-12 * v[69]; + y[282] = 0.08 * v[71] + 0.06 * v[51] + v[66]; + y[284] = 0.08 * v[72] + 0.02 * v[68] + v[62]; + y[285] = 0.08 * v[58] + 0.02 * v[67] + v[64]; + y[286] = 0.08 * v[71] + 0.02 * v[51] + v[66]; + v[74] = cos(x[10]); + v[73] = sin(x[10]); + v[69] = 4.89663865010925e-12 * v[73]; + v[70] = v[72] * v[74] + v[68] * v[69] + v[61] * v[73]; + v[54] = -v[73]; + v[75] = 4.89663865010925e-12 * v[74]; + v[76] = v[72] * v[54] + v[68] * v[75] + v[61] * v[74]; + v[77] = v[62] + 0.0825 * v[72]; + y[288] = -0.08 * v[70] + 0.095 * v[76] + v[77]; + v[78] = v[58] * v[74] + v[67] * v[69] + v[63] * v[73]; + v[79] = v[58] * v[54] + v[67] * v[75] + v[63] * v[74]; + v[80] = v[64] + 0.0825 * v[58]; + y[289] = -0.08 * v[78] + 0.095 * v[79] + v[80]; + v[69] = v[71] * v[74] + v[51] * v[69] + v[65] * v[73]; + v[75] = v[71] * v[54] + v[51] * v[75] + v[65] * v[74]; + v[54] = v[66] + 0.0825 * v[71]; + y[290] = -0.08 * v[69] + 0.095 * v[75] + v[54]; + v[74] = -1. * v[68] + 4.89663865010925e-12 * v[61]; + y[292] = 0.02 * v[74] + v[77]; + v[73] = -1. * v[67] + 4.89663865010925e-12 * v[63]; + y[293] = 0.02 * v[73] + v[80]; + v[81] = -1. * v[51] + 4.89663865010925e-12 * v[65]; + y[294] = 0.02 * v[81] + v[54]; + y[296] = 0.06 * v[74] + v[77]; + y[297] = 0.06 * v[73] + v[80]; + y[298] = 0.06 * v[81] + v[54]; + y[300] = -0.08 * v[70] + 0.06 * v[76] + v[77]; + y[301] = -0.08 * v[78] + 0.06 * v[79] + v[80]; + y[302] = -0.08 * v[69] + 0.06 * v[75] + v[54]; + v[82] = sin(x[11]); + v[83] = -v[82]; + v[84] = cos(x[11]); + v[85] = 4.89663865010925e-12 * v[84]; + v[86] = -1. * v[84]; + v[87] = v[70] * v[83] + v[76] * v[85] + v[74] * v[86]; + y[352] = v[77] + -0.0825 * v[70] + 0.384 * v[76]; + y[304] = 0.055 * v[87] + y[352]; + v[88] = v[78] * v[83] + v[79] * v[85] + v[73] * v[86]; + y[353] = v[80] + -0.0825 * v[78] + 0.384 * v[79]; + y[305] = 0.055 * v[88] + y[353]; + v[86] = v[69] * v[83] + v[75] * v[85] + v[81] * v[86]; + y[354] = v[54] + -0.0825 * v[69] + 0.384 * v[75]; + y[306] = 0.055 * v[86] + y[354]; + y[308] = 0.075 * v[87] + y[352]; + y[309] = 0.075 * v[88] + y[353]; + y[310] = 0.075 * v[86] + y[354]; + v[85] = v[76] + 4.89663865010925e-12 * v[74]; + y[312] = -0.22 * v[85] + y[352]; + v[83] = v[79] + 4.89663865010925e-12 * v[73]; + y[313] = -0.22 * v[83] + y[353]; + v[89] = v[75] + 4.89663865010925e-12 * v[81]; + y[314] = -0.22 * v[89] + y[354]; + y[316] = 0.05 * v[87] + -0.18 * v[85] + y[352]; + y[317] = 0.05 * v[88] + -0.18 * v[83] + y[353]; + y[318] = 0.05 * v[86] + -0.18 * v[89] + y[354]; + v[90] = 4.89663865010925e-12 * v[82]; + v[82] = -1. * v[82]; + v[91] = v[70] * v[84] + v[76] * v[90] + v[74] * v[82]; + y[320] = 0.01 * v[91] + 0.08 * v[87] + -0.14 * v[85] + y[352]; + v[92] = v[78] * v[84] + v[79] * v[90] + v[73] * v[82]; + y[321] = 0.01 * v[92] + 0.08 * v[88] + -0.14 * v[83] + y[353]; + v[82] = v[69] * v[84] + v[75] * v[90] + v[81] * v[82]; + y[322] = 0.01 * v[82] + 0.08 * v[86] + -0.14 * v[89] + y[354]; + y[324] = 0.01 * v[91] + 0.085 * v[87] + -0.11 * v[85] + y[352]; + y[325] = 0.01 * v[92] + 0.085 * v[88] + -0.11 * v[83] + y[353]; + y[326] = 0.01 * v[82] + 0.085 * v[86] + -0.11 * v[89] + y[354]; + y[328] = 0.01 * v[91] + 0.09 * v[87] + -0.08 * v[85] + y[352]; + y[329] = 0.01 * v[92] + 0.09 * v[88] + -0.08 * v[83] + y[353]; + y[330] = 0.01 * v[82] + 0.09 * v[86] + -0.08 * v[89] + y[354]; + y[332] = 0.01 * v[91] + 0.095 * v[87] + -0.05 * v[85] + y[352]; + y[333] = 0.01 * v[92] + 0.095 * v[88] + -0.05 * v[83] + y[353]; + y[334] = 0.01 * v[82] + 0.095 * v[86] + -0.05 * v[89] + y[354]; + y[336] = -0.01 * v[91] + 0.08 * v[87] + -0.14 * v[85] + y[352]; + y[337] = -0.01 * v[92] + 0.08 * v[88] + -0.14 * v[83] + y[353]; + y[338] = -0.01 * v[82] + 0.08 * v[86] + -0.14 * v[89] + y[354]; + y[340] = -0.01 * v[91] + 0.085 * v[87] + -0.11 * v[85] + y[352]; + y[341] = -0.01 * v[92] + 0.085 * v[88] + -0.11 * v[83] + y[353]; + y[342] = -0.01 * v[82] + 0.085 * v[86] + -0.11 * v[89] + y[354]; + y[344] = -0.01 * v[91] + 0.09 * v[87] + -0.08 * v[85] + y[352]; + y[345] = -0.01 * v[92] + 0.09 * v[88] + -0.08 * v[83] + y[353]; + y[346] = -0.01 * v[82] + 0.09 * v[86] + -0.08 * v[89] + y[354]; + y[348] = -0.01 * v[91] + 0.095 * v[87] + -0.05 * v[85] + y[352]; + y[349] = -0.01 * v[92] + 0.095 * v[88] + -0.05 * v[83] + y[353]; + y[350] = -0.01 * v[82] + 0.095 * v[86] + -0.05 * v[89] + y[354]; + v[90] = cos(x[12]); + v[84] = sin(x[12]); + v[93] = 4.89663865010925e-12 * v[84]; + v[94] = v[91] * v[90] + v[87] * v[93] + v[85] * v[84]; + v[95] = -v[84]; + v[96] = 4.89663865010925e-12 * v[90]; + v[91] = v[91] * v[95] + v[87] * v[96] + v[85] * v[90]; + y[356] = 0.08 * v[94] + -0.01 * v[91] + y[352]; + v[97] = v[92] * v[90] + v[88] * v[93] + v[83] * v[84]; + v[92] = v[92] * v[95] + v[88] * v[96] + v[83] * v[90]; + y[357] = 0.08 * v[97] + -0.01 * v[92] + y[353]; + v[93] = v[82] * v[90] + v[86] * v[93] + v[89] * v[84]; + v[96] = v[82] * v[95] + v[86] * v[96] + v[89] * v[90]; + y[358] = 0.08 * v[93] + -0.01 * v[96] + y[354]; + y[360] = 0.08 * v[94] + 0.035 * v[91] + y[352]; + y[361] = 0.08 * v[97] + 0.035 * v[92] + y[353]; + y[362] = 0.08 * v[93] + 0.035 * v[96] + y[354]; + v[95] = -1. * v[87] + 4.89663865010925e-12 * v[85]; + v[90] = -1. * v[91] + 4.89663865010925e-12 * v[95]; + v[82] = y[352] + 0.088 * v[94]; + y[364] = 0.07 * v[90] + v[82]; + v[84] = -1. * v[88] + 4.89663865010925e-12 * v[83]; + v[98] = -1. * v[92] + 4.89663865010925e-12 * v[84]; + v[99] = y[353] + 0.088 * v[97]; + y[365] = 0.07 * v[98] + v[99]; + v[100] = -1. * v[86] + 4.89663865010925e-12 * v[89]; + v[101] = -1. * v[96] + 4.89663865010925e-12 * v[100]; + v[102] = y[354] + 0.088 * v[93]; + y[366] = 0.07 * v[101] + v[102]; + v[103] = cos(x[13]); + v[104] = sin(x[13]); + v[105] = 4.89663865010925e-12 * v[104]; + v[106] = v[94] * v[103] + v[91] * v[105] + v[95] * v[104]; + v[107] = -v[104]; + v[108] = 4.89663865010925e-12 * v[103]; + v[95] = v[94] * v[107] + v[91] * v[108] + v[95] * v[103]; + y[368] = 0.02 * v[106] + 0.04 * v[95] + 0.08 * v[90] + v[82]; + v[109] = v[97] * v[103] + v[92] * v[105] + v[84] * v[104]; + v[84] = v[97] * v[107] + v[92] * v[108] + v[84] * v[103]; + y[369] = 0.02 * v[109] + 0.04 * v[84] + 0.08 * v[98] + v[99]; + v[105] = v[93] * v[103] + v[96] * v[105] + v[100] * v[104]; + v[108] = v[93] * v[107] + v[96] * v[108] + v[100] * v[103]; + y[370] = 0.02 * v[105] + 0.04 * v[108] + 0.08 * v[101] + v[102]; + y[372] = 0.04 * v[106] + 0.02 * v[95] + 0.08 * v[90] + v[82]; + y[373] = 0.04 * v[109] + 0.02 * v[84] + 0.08 * v[98] + v[99]; + y[374] = 0.04 * v[105] + 0.02 * v[108] + 0.08 * v[101] + v[102]; + y[376] = 0.04 * v[106] + 0.06 * v[95] + 0.085 * v[90] + v[82]; + y[377] = 0.04 * v[109] + 0.06 * v[84] + 0.085 * v[98] + v[99]; + y[378] = 0.04 * v[105] + 0.06 * v[108] + 0.085 * v[101] + v[102]; + y[380] = 0.06 * v[106] + 0.04 * v[95] + 0.085 * v[90] + v[82]; + y[381] = 0.06 * v[109] + 0.04 * v[84] + 0.085 * v[98] + v[99]; + y[382] = 0.06 * v[105] + 0.04 * v[108] + 0.085 * v[101] + v[102]; + y[384] = -0.0530330085889673 * v[106] + -0.0530330085890148 * v[95] + 0.117 * v[90] + v[82]; + y[385] = -0.0530330085889673 * v[109] + -0.0530330085890148 * v[84] + 0.117 * v[98] + v[99]; + y[386] = -0.0530330085889673 * v[105] + -0.0530330085890148 * v[108] + 0.117 * v[101] + v[102]; + y[388] = -0.0318198051533804 * v[106] + -0.0318198051534089 * v[95] + 0.117 * v[90] + v[82]; + y[389] = -0.0318198051533804 * v[109] + -0.0318198051534089 * v[84] + 0.117 * v[98] + v[99]; + y[390] = -0.0318198051533804 * v[105] + -0.0318198051534089 * v[108] + 0.117 * v[101] + v[102]; + y[392] = -0.0106066017177935 * v[106] + -0.010606601717803 * v[95] + 0.117 * v[90] + v[82]; + y[393] = -0.0106066017177935 * v[109] + -0.010606601717803 * v[84] + 0.117 * v[98] + v[99]; + y[394] = -0.0106066017177935 * v[105] + -0.010606601717803 * v[108] + 0.117 * v[101] + v[102]; + y[396] = 0.0106066017177935 * v[106] + 0.010606601717803 * v[95] + 0.117 * v[90] + v[82]; + y[397] = 0.0106066017177935 * v[109] + 0.010606601717803 * v[84] + 0.117 * v[98] + v[99]; + y[398] = 0.0106066017177935 * v[105] + 0.010606601717803 * v[108] + 0.117 * v[101] + v[102]; + y[400] = 0.0318198051533804 * v[106] + 0.0318198051534089 * v[95] + 0.117 * v[90] + v[82]; + y[401] = 0.0318198051533804 * v[109] + 0.0318198051534089 * v[84] + 0.117 * v[98] + v[99]; + y[402] = 0.0318198051533804 * v[105] + 0.0318198051534089 * v[108] + 0.117 * v[101] + v[102]; + y[404] = 0.0530330085889673 * v[106] + 0.0530330085890148 * v[95] + 0.117 * v[90] + v[82]; + y[405] = 0.0530330085889673 * v[109] + 0.0530330085890148 * v[84] + 0.117 * v[98] + v[99]; + y[406] = 0.0530330085889673 * v[105] + 0.0530330085890148 * v[108] + 0.117 * v[101] + v[102]; + y[408] = -0.0530330085889673 * v[106] + -0.0530330085890148 * v[95] + 0.137 * v[90] + v[82]; + y[409] = -0.0530330085889673 * v[109] + -0.0530330085890148 * v[84] + 0.137 * v[98] + v[99]; + y[410] = -0.0530330085889673 * v[105] + -0.0530330085890148 * v[108] + 0.137 * v[101] + v[102]; + y[412] = -0.0318198051533804 * v[106] + -0.0318198051534089 * v[95] + 0.137 * v[90] + v[82]; + y[413] = -0.0318198051533804 * v[109] + -0.0318198051534089 * v[84] + 0.137 * v[98] + v[99]; + y[414] = -0.0318198051533804 * v[105] + -0.0318198051534089 * v[108] + 0.137 * v[101] + v[102]; + y[416] = -0.0106066017177935 * v[106] + -0.010606601717803 * v[95] + 0.137 * v[90] + v[82]; + y[417] = -0.0106066017177935 * v[109] + -0.010606601717803 * v[84] + 0.137 * v[98] + v[99]; + y[418] = -0.0106066017177935 * v[105] + -0.010606601717803 * v[108] + 0.137 * v[101] + v[102]; + y[420] = 0.0106066017177935 * v[106] + 0.010606601717803 * v[95] + 0.137 * v[90] + v[82]; + y[421] = 0.0106066017177935 * v[109] + 0.010606601717803 * v[84] + 0.137 * v[98] + v[99]; + y[422] = 0.0106066017177935 * v[105] + 0.010606601717803 * v[108] + 0.137 * v[101] + v[102]; + y[424] = 0.0318198051533804 * v[106] + 0.0318198051534089 * v[95] + 0.137 * v[90] + v[82]; + y[425] = 0.0318198051533804 * v[109] + 0.0318198051534089 * v[84] + 0.137 * v[98] + v[99]; + y[426] = 0.0318198051533804 * v[105] + 0.0318198051534089 * v[108] + 0.137 * v[101] + v[102]; + y[428] = 0.0530330085889673 * v[106] + 0.0530330085890148 * v[95] + 0.137 * v[90] + v[82]; + y[429] = 0.0530330085889673 * v[109] + 0.0530330085890148 * v[84] + 0.137 * v[98] + v[99]; + y[430] = 0.0530330085889673 * v[105] + 0.0530330085890148 * v[108] + 0.137 * v[101] + v[102]; + y[432] = -0.0530330085889673 * v[106] + -0.0530330085890148 * v[95] + 0.157 * v[90] + v[82]; + y[433] = -0.0530330085889673 * v[109] + -0.0530330085890148 * v[84] + 0.157 * v[98] + v[99]; + y[434] = -0.0530330085889673 * v[105] + -0.0530330085890148 * v[108] + 0.157 * v[101] + v[102]; + y[436] = -0.0318198051533804 * v[106] + -0.0318198051534089 * v[95] + 0.157 * v[90] + v[82]; + y[437] = -0.0318198051533804 * v[109] + -0.0318198051534089 * v[84] + 0.157 * v[98] + v[99]; + y[438] = -0.0318198051533804 * v[105] + -0.0318198051534089 * v[108] + 0.157 * v[101] + v[102]; + y[440] = -0.0106066017177935 * v[106] + -0.010606601717803 * v[95] + 0.157 * v[90] + v[82]; + y[441] = -0.0106066017177935 * v[109] + -0.010606601717803 * v[84] + 0.157 * v[98] + v[99]; + y[442] = -0.0106066017177935 * v[105] + -0.010606601717803 * v[108] + 0.157 * v[101] + v[102]; + y[444] = 0.0106066017177935 * v[106] + 0.010606601717803 * v[95] + 0.157 * v[90] + v[82]; + y[445] = 0.0106066017177935 * v[109] + 0.010606601717803 * v[84] + 0.157 * v[98] + v[99]; + y[446] = 0.0106066017177935 * v[105] + 0.010606601717803 * v[108] + 0.157 * v[101] + v[102]; + y[448] = 0.0318198051533804 * v[106] + 0.0318198051534089 * v[95] + 0.157 * v[90] + v[82]; + y[449] = 0.0318198051533804 * v[109] + 0.0318198051534089 * v[84] + 0.157 * v[98] + v[99]; + y[450] = 0.0318198051533804 * v[105] + 0.0318198051534089 * v[108] + 0.157 * v[101] + v[102]; + y[452] = 0.0530330085889673 * v[106] + 0.0530330085890148 * v[95] + 0.157 * v[90] + v[82]; + y[453] = 0.0530330085889673 * v[109] + 0.0530330085890148 * v[84] + 0.157 * v[98] + v[99]; + y[454] = 0.0530330085889673 * v[105] + 0.0530330085890148 * v[108] + 0.157 * v[101] + v[102]; + y[456] = 0.0565685424948984 * v[106] + 0.0565685424949492 * v[95] + 0.1874 * v[90] + v[82]; + y[457] = 0.0565685424948984 * v[109] + 0.0565685424949492 * v[84] + 0.1874 * v[98] + v[99]; + y[458] = 0.0565685424948984 * v[105] + 0.0565685424949492 * v[108] + 0.1874 * v[101] + v[102]; + y[460] = 0.0516187950265948 * v[106] + 0.0516187950266411 * v[95] + 0.2094 * v[90] + v[82]; + y[461] = 0.0516187950265948 * v[109] + 0.0516187950266411 * v[84] + 0.2094 * v[98] + v[99]; + y[462] = 0.0516187950265948 * v[105] + 0.0516187950266411 * v[108] + 0.2094 * v[101] + v[102]; + y[464] = -0.0565685424948984 * v[106] + -0.0565685424949492 * v[95] + 0.1874 * v[90] + v[82]; + y[465] = -0.0565685424948984 * v[109] + -0.0565685424949492 * v[84] + 0.1874 * v[98] + v[99]; + y[466] = -0.0565685424948984 * v[105] + -0.0565685424949492 * v[108] + 0.1874 * v[101] + v[102]; + y[468] = -0.0516187950265948 * v[106] + -0.0516187950266411 * v[95] + 0.2094 * v[90] + v[82]; + y[469] = -0.0516187950265948 * v[109] + -0.0516187950266411 * v[84] + 0.2094 * v[98] + v[99]; + y[470] = -0.0516187950265948 * v[105] + -0.0516187950266411 * v[108] + 0.2094 * v[101] + v[102]; + y[476] = -0.0399999991059303 * v[1]; + y[477] = -0.2875 + -0.0399999991059303 * v[2]; + y[480] = -0.0850000008940697 * v[7] + 0.0399999991059303 * v[1]; + y[481] = -0.2875 + -0.0850000008940697 * v[6] + 0.0399999991059303 * v[2]; + y[482] = 0.333 + 1.95865541626434e-13 + -0.0850000008940697 * v[4]; + y[484] = + 0.0385857857763767 * v[19] + 0.0289393402636051 * v[15] + -0.0517677664756775 * v[8] + v[9]; + y[485] = + 0.0385857857763767 * v[5] + 0.0289393402636051 * v[14] + -0.0517677664756775 * v[10] + v[11]; + y[486] = + 0.0385857857763767 * v[18] + 0.0289393402636051 * v[3] + -0.0517677664756775 * v[12] + v[13]; + y[488] = + -0.041449997574091 * v[17] + 0.0492218732833862 * v[23] + 0.0289125014096498 * v[21] + v[24]; + y[489] = + -0.041449997574091 * v[25] + 0.0492218732833862 * v[26] + 0.0289125014096498 * v[20] + v[27]; + y[490] = + -0.041449997574091 * v[16] + 0.0492218732833862 * v[22] + 0.0289125014096498 * v[28] + v[0]; + y[492] = 0.0375000014901161 * v[34] + -0.109999999403954 * v[32] + y[116]; + y[493] = 0.0375000014901161 * v[35] + -0.109999999403954 * v[30] + y[117]; + y[494] = 0.0375000014901161 * v[33] + -0.109999999403954 * v[36] + y[118]; + y[496] = 0.0424309633672237 * v[41] + 0.0144476993009448 * v[38] + y[116]; + y[497] = 0.0424309633672237 * v[44] + 0.0144476993009448 * v[39] + y[117]; + y[498] = 0.0424309633672237 * v[40] + 0.0144476993009448 * v[43] + y[118]; + y[500] = + 0.0153005504980683 * v[53] + 0.0153005504980683 * v[42] + 0.0745901614427567 * v[37] + v[29]; + y[501] = + 0.0153005504980683 * v[56] + 0.0153005504980683 * v[31] + 0.0745901614427567 * v[45] + v[46]; + y[502] = + 0.0153005504980683 * v[52] + 0.0153005504980683 * v[55] + 0.0745901614427567 * v[48] + v[49]; + y[504] = -5.20417042793042e-18 * v[53] + -2.16840434497101e-18 * v[42] + + 0.129201397299767 * v[37] + v[29]; + y[505] = -5.20417042793042e-18 * v[56] + -2.16840434497101e-18 * v[31] + + 0.129201397299767 * v[45] + v[46]; + y[506] = -5.20417042793042e-18 * v[52] + -2.16840434497101e-18 * v[55] + + 0.129201397299767 * v[48] + v[49]; + y[508] = + 0.0540936700999737 * v[53] + 0.0540936700999737 * v[42] + 0.198400005698204 * v[37] + v[29]; + y[509] = + 0.0540936700999737 * v[56] + 0.0540936700999737 * v[31] + 0.198400005698204 * v[45] + v[46]; + y[510] = + 0.0540936700999737 * v[52] + 0.0540936700999737 * v[55] + 0.198400005698204 * v[48] + v[49]; + y[512] = + -0.0540936700999737 * v[53] + -0.0540936700999737 * v[42] + 0.198400005698204 * v[37] + v[29]; + y[513] = + -0.0540936700999737 * v[56] + -0.0540936700999737 * v[31] + 0.198400005698204 * v[45] + v[46]; + y[514] = + -0.0540936700999737 * v[52] + -0.0540936700999737 * v[55] + 0.198400005698204 * v[48] + v[49]; + y[520] = -0.0399999991059303 * v[50]; + y[521] = 0.2875 + -0.0399999991059303 * v[47]; + y[524] = -0.0850000008940697 * v[60] + 0.0399999991059303 * v[50]; + y[525] = 0.2875 + -0.0850000008940697 * v[59] + 0.0399999991059303 * v[47]; + y[526] = 0.333 + 1.95865541626434e-13 + -0.0850000008940697 * v[57]; + y[528] = + 0.0385857857763767 * v[72] + 0.0289393402636051 * v[68] + -0.0517677664756775 * v[61] + v[62]; + y[529] = + 0.0385857857763767 * v[58] + 0.0289393402636051 * v[67] + -0.0517677664756775 * v[63] + v[64]; + y[530] = + 0.0385857857763767 * v[71] + 0.0289393402636051 * v[51] + -0.0517677664756775 * v[65] + v[66]; + y[532] = + -0.041449997574091 * v[70] + 0.0492218732833862 * v[76] + 0.0289125014096498 * v[74] + v[77]; + y[533] = + -0.041449997574091 * v[78] + 0.0492218732833862 * v[79] + 0.0289125014096498 * v[73] + v[80]; + y[534] = + -0.041449997574091 * v[69] + 0.0492218732833862 * v[75] + 0.0289125014096498 * v[81] + v[54]; + y[536] = 0.0375000014901161 * v[87] + -0.109999999403954 * v[85] + y[352]; + y[537] = 0.0375000014901161 * v[88] + -0.109999999403954 * v[83] + y[353]; + y[538] = 0.0375000014901161 * v[86] + -0.109999999403954 * v[89] + y[354]; + y[540] = 0.0424309633672237 * v[94] + 0.0144476993009448 * v[91] + y[352]; + y[541] = 0.0424309633672237 * v[97] + 0.0144476993009448 * v[92] + y[353]; + y[542] = 0.0424309633672237 * v[93] + 0.0144476993009448 * v[96] + y[354]; + y[544] = + 0.0153005504980683 * v[106] + 0.0153005504980683 * v[95] + 0.0745901614427567 * v[90] + v[82]; + y[545] = + 0.0153005504980683 * v[109] + 0.0153005504980683 * v[84] + 0.0745901614427567 * v[98] + v[99]; + y[546] = 0.0153005504980683 * v[105] + 0.0153005504980683 * v[108] + 0.0745901614427567 * v[101] + + v[102]; + y[548] = -5.20417042793042e-18 * v[106] + -2.16840434497101e-18 * v[95] + + 0.129201397299767 * v[90] + v[82]; + y[549] = -5.20417042793042e-18 * v[109] + -2.16840434497101e-18 * v[84] + + 0.129201397299767 * v[98] + v[99]; + y[550] = -5.20417042793042e-18 * v[105] + -2.16840434497101e-18 * v[108] + + 0.129201397299767 * v[101] + v[102]; + y[552] = + 0.0540936700999737 * v[106] + 0.0540936700999737 * v[95] + 0.198400005698204 * v[90] + v[82]; + y[553] = + 0.0540936700999737 * v[109] + 0.0540936700999737 * v[84] + 0.198400005698204 * v[98] + v[99]; + y[554] = 0.0540936700999737 * v[105] + 0.0540936700999737 * v[108] + 0.198400005698204 * v[101] + + v[102]; + y[556] = -0.0540936700999737 * v[106] + -0.0540936700999737 * v[95] + 0.198400005698204 * v[90] + + v[82]; + y[557] = -0.0540936700999737 * v[109] + -0.0540936700999737 * v[84] + 0.198400005698204 * v[98] + + v[99]; + y[558] = -0.0540936700999737 * v[105] + -0.0540936700999737 * v[108] + + 0.198400005698204 * v[101] + v[102]; + // dependent variables without operations + y[0] = 0.; + y[1] = -0.2875; + y[2] = 0.05; + y[3] = 0.0799999982118607; + y[6] = 0.333; + y[7] = 0.0599999986588955; + y[10] = 0.333; + y[11] = 0.0599999986588955; + y[12] = 0.; + y[13] = -0.2875; + y[14] = 0.213; + y[15] = 0.0599999986588955; + y[16] = 0.; + y[17] = -0.2875; + y[18] = 0.163; + y[19] = 0.0599999986588955; + y[22] = 0.333000000000147; + y[23] = 0.0599999986588955; + y[26] = 0.333000000000392; + y[27] = 0.0599999986588955; + y[31] = 0.0599999986588955; + y[35] = 0.0599999986588955; + y[39] = 0.0599999986588955; + y[43] = 0.0500000007450581; + y[47] = 0.0549999997019768; + y[51] = 0.0549999997019768; + y[55] = 0.0599999986588955; + y[59] = 0.0549999997019768; + y[63] = 0.0549999997019768; + y[67] = 0.0549999997019768; + y[71] = 0.0599999986588955; + y[75] = 0.0599999986588955; + y[79] = 0.0599999986588955; + y[83] = 0.0500000007450581; + y[87] = 0.025000000372529; + y[91] = 0.025000000372529; + y[95] = 0.025000000372529; + y[99] = 0.025000000372529; + y[103] = 0.025000000372529; + y[107] = 0.025000000372529; + y[111] = 0.025000000372529; + y[115] = 0.025000000372529; + y[119] = 0.0500000007450581; + y[123] = 0.0500000007450581; + y[127] = 0.0520000010728836; + y[131] = 0.0500000007450581; + y[135] = 0.025000000372529; + y[139] = 0.025000000372529; + y[143] = 0.0199999995529652; + y[147] = 0.0199999995529652; + y[151] = 0.0280000008642673; + y[155] = 0.0280000008642673; + y[159] = 0.0280000008642673; + y[163] = 0.0280000008642673; + y[167] = 0.0280000008642673; + y[171] = 0.0280000008642673; + y[175] = 0.0260000005364418; + y[179] = 0.0260000005364418; + y[183] = 0.0260000005364418; + y[187] = 0.0260000005364418; + y[191] = 0.0260000005364418; + y[195] = 0.0260000005364418; + y[199] = 0.0240000002086163; + y[203] = 0.0240000002086163; + y[207] = 0.0240000002086163; + y[211] = 0.0240000002086163; + y[215] = 0.0240000002086163; + y[219] = 0.0240000002086163; + y[223] = 0.0120000001043081; + y[227] = 0.0120000001043081; + y[231] = 0.0120000001043081; + y[235] = 0.0120000001043081; + y[236] = 0.; + y[237] = 0.2875; + y[238] = 0.05; + y[239] = 0.0799999982118607; + y[242] = 0.333; + y[243] = 0.0599999986588955; + y[246] = 0.333; + y[247] = 0.0599999986588955; + y[248] = 0.; + y[249] = 0.2875; + y[250] = 0.213; + y[251] = 0.0599999986588955; + y[252] = 0.; + y[253] = 0.2875; + y[254] = 0.163; + y[255] = 0.0599999986588955; + y[258] = 0.333000000000147; + y[259] = 0.0599999986588955; + y[262] = 0.333000000000392; + y[263] = 0.0599999986588955; + y[267] = 0.0599999986588955; + y[271] = 0.0599999986588955; + y[275] = 0.0599999986588955; + y[279] = 0.0500000007450581; + y[283] = 0.0549999997019768; + y[287] = 0.0549999997019768; + y[291] = 0.0599999986588955; + y[295] = 0.0549999997019768; + y[299] = 0.0549999997019768; + y[303] = 0.0549999997019768; + y[307] = 0.0599999986588955; + y[311] = 0.0599999986588955; + y[315] = 0.0599999986588955; + y[319] = 0.0500000007450581; + y[323] = 0.025000000372529; + y[327] = 0.025000000372529; + y[331] = 0.025000000372529; + y[335] = 0.025000000372529; + y[339] = 0.025000000372529; + y[343] = 0.025000000372529; + y[347] = 0.025000000372529; + y[351] = 0.025000000372529; + y[355] = 0.0500000007450581; + y[359] = 0.0500000007450581; + y[363] = 0.0520000010728836; + y[367] = 0.0500000007450581; + y[371] = 0.025000000372529; + y[375] = 0.025000000372529; + y[379] = 0.0199999995529652; + y[383] = 0.0199999995529652; + y[387] = 0.0280000008642673; + y[391] = 0.0280000008642673; + y[395] = 0.0280000008642673; + y[399] = 0.0280000008642673; + y[403] = 0.0280000008642673; + y[407] = 0.0280000008642673; + y[411] = 0.0260000005364418; + y[415] = 0.0260000005364418; + y[419] = 0.0260000005364418; + y[423] = 0.0260000005364418; + y[427] = 0.0260000005364418; + y[431] = 0.0260000005364418; + y[435] = 0.0240000002086163; + y[439] = 0.0240000002086163; + y[443] = 0.0240000002086163; + y[447] = 0.0240000002086163; + y[451] = 0.0240000002086163; + y[455] = 0.0240000002086163; + y[459] = 0.0120000001043081; + y[463] = 0.0120000001043081; + y[467] = 0.0120000001043081; + y[471] = 0.0120000001043081; + y[472] = 0.; + y[473] = -0.287499994039536; + y[474] = 0.0500000007450581; + y[475] = 0.0799999982118607; + y[478] = 0.24799999910593; + y[479] = 0.153941467404366; + y[483] = 0.153941467404366; + y[487] = 0.128210678696632; + y[491] = 0.126465573906898; + y[495] = 0.176216393709183; + y[499] = 0.0948232412338257; + y[503] = 0.0721197500824928; + y[507] = 0.103986009955406; + y[511] = 0.0235433969646692; + y[515] = 0.0235433969646692; + y[516] = 0.; + y[517] = 0.287499994039536; + y[518] = 0.0500000007450581; + y[519] = 0.0799999982118607; + y[522] = 0.24799999910593; + y[523] = 0.153941467404366; + y[527] = 0.153941467404366; + y[531] = 0.128210678696632; + y[535] = 0.126465573906898; + y[539] = 0.176216393709183; + y[543] = 0.0948232412338257; + y[547] = 0.0721197500824928; + y[551] = 0.103986009955406; + y[555] = 0.0235433969646692; + y[559] = 0.0235433969646692; + + Debug output; + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[0], y[1], y[2], y[3])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[4], y[5], y[6], y[7])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[8], y[9], y[10], y[11])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[12], y[13], y[14], y[15])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[16], y[17], y[18], y[19])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[20], y[21], y[22], y[23])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[24], y[25], y[26], y[27])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[28], y[29], y[30], y[31])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[32], y[33], y[34], y[35])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[36], y[37], y[38], y[39])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[40], y[41], y[42], y[43])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[44], y[45], y[46], y[47])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[48], y[49], y[50], y[51])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[52], y[53], y[54], y[55])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[56], y[57], y[58], y[59])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[60], y[61], y[62], y[63])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[64], y[65], y[66], y[67])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[68], y[69], y[70], y[71])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[72], y[73], y[74], y[75])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[76], y[77], y[78], y[79])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[80], y[81], y[82], y[83])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[84], y[85], y[86], y[87])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[88], y[89], y[90], y[91])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[92], y[93], y[94], y[95])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[96], y[97], y[98], y[99])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[100], y[101], y[102], y[103])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[104], y[105], y[106], y[107])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[108], y[109], y[110], y[111])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[112], y[113], y[114], y[115])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[116], y[117], y[118], y[119])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[120], y[121], y[122], y[123])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[124], y[125], y[126], y[127])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[128], y[129], y[130], y[131])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[132], y[133], y[134], y[135])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[136], y[137], y[138], y[139])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[140], y[141], y[142], y[143])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[144], y[145], y[146], y[147])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[148], y[149], y[150], y[151])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[152], y[153], y[154], y[155])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[156], y[157], y[158], y[159])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[160], y[161], y[162], y[163])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[164], y[165], y[166], y[167])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[168], y[169], y[170], y[171])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[172], y[173], y[174], y[175])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[176], y[177], y[178], y[179])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[180], y[181], y[182], y[183])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[184], y[185], y[186], y[187])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[188], y[189], y[190], y[191])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[192], y[193], y[194], y[195])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[196], y[197], y[198], y[199])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[200], y[201], y[202], y[203])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[204], y[205], y[206], y[207])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[208], y[209], y[210], y[211])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[212], y[213], y[214], y[215])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[216], y[217], y[218], y[219])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[220], y[221], y[222], y[223])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[224], y[225], y[226], y[227])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[228], y[229], y[230], y[231])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[232], y[233], y[234], y[235])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[236], y[237], y[238], y[239])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[240], y[241], y[242], y[243])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[244], y[245], y[246], y[247])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[248], y[249], y[250], y[251])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[252], y[253], y[254], y[255])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[256], y[257], y[258], y[259])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[260], y[261], y[262], y[263])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[264], y[265], y[266], y[267])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[268], y[269], y[270], y[271])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[272], y[273], y[274], y[275])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[276], y[277], y[278], y[279])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[280], y[281], y[282], y[283])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[284], y[285], y[286], y[287])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[288], y[289], y[290], y[291])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[292], y[293], y[294], y[295])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[296], y[297], y[298], y[299])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[300], y[301], y[302], y[303])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[304], y[305], y[306], y[307])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[308], y[309], y[310], y[311])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[312], y[313], y[314], y[315])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[316], y[317], y[318], y[319])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[320], y[321], y[322], y[323])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[324], y[325], y[326], y[327])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[328], y[329], y[330], y[331])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[332], y[333], y[334], y[335])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[336], y[337], y[338], y[339])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[340], y[341], y[342], y[343])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[344], y[345], y[346], y[347])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[348], y[349], y[350], y[351])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[352], y[353], y[354], y[355])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[356], y[357], y[358], y[359])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[360], y[361], y[362], y[363])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[364], y[365], y[366], y[367])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[368], y[369], y[370], y[371])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[372], y[373], y[374], y[375])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[376], y[377], y[378], y[379])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[380], y[381], y[382], y[383])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[384], y[385], y[386], y[387])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[388], y[389], y[390], y[391])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[392], y[393], y[394], y[395])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[396], y[397], y[398], y[399])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[400], y[401], y[402], y[403])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[404], y[405], y[406], y[407])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[408], y[409], y[410], y[411])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[412], y[413], y[414], y[415])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[416], y[417], y[418], y[419])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[420], y[421], y[422], y[423])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[424], y[425], y[426], y[427])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[428], y[429], y[430], y[431])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[432], y[433], y[434], y[435])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[436], y[437], y[438], y[439])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[440], y[441], y[442], y[443])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[444], y[445], y[446], y[447])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[448], y[449], y[450], y[451])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[452], y[453], y[454], y[455])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[456], y[457], y[458], y[459])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[460], y[461], y[462], y[463])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[464], y[465], y[466], y[467])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[468], y[469], y[470], y[471])); + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(0, 17); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(0, 18); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(0, 19); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(0, 20); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(0, 21); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(0, 22); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(0, 23); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(0, 24); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(0, 25); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(0, 26); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(0, 27); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(0, 28); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(0, 29); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(0, 30); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(0, 31); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(0, 32); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(0, 33); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(0, 34); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(0, 35); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(0, 36); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(0, 37); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(0, 38); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(0, 39); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(0, 40); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(0, 41); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(0, 42); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(0, 43); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(0, 44); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(0, 45); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(0, 46); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(0, 47); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(0, 48); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(0, 49); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(0, 50); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(0, 51); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(0, 52); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(0, 53); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(0, 54); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(0, 55); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(0, 56); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(0, 57); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(0, 58); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(0, 60); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(0, 61); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(0, 62); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(0, 63); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(0, 64); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(0, 65); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(0, 66); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(0, 67); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(0, 68); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(0, 69); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(0, 70); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(0, 71); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(0, 72); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(0, 73); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(0, 74); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(0, 75); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(0, 76); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(0, 77); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(0, 78); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(0, 79); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(0, 80); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(0, 81); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(0, 82); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(0, 83); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(0, 84); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(0, 85); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(0, 86); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(0, 87); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(0, 88); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(0, 89); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(0, 90); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(0, 91); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(0, 92); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(0, 93); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(0, 94); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(0, 95); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(0, 96); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(0, 97); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(0, 98); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(0, 99); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(0, 100); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(0, 101); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(0, 102); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(0, 103); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(0, 104); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(0, 105); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(0, 106); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(0, 107); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(0, 108); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(0, 109); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(0, 110); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(0, 111); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(0, 112); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(0, 113); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(0, 114); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(0, 115); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(0, 116); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(0, 117); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(1, 17); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(1, 18); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(1, 19); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(1, 20); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(1, 21); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(1, 22); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(1, 23); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(1, 24); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(1, 25); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(1, 26); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(1, 27); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(1, 28); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(2, 17); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(2, 18); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(2, 19); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(2, 20); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(2, 21); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(2, 22); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(2, 23); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(2, 24); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(2, 25); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(2, 26); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(2, 27); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(2, 28); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(3, 17); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(3, 18); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(3, 19); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(3, 20); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(3, 21); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(3, 22); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(3, 23); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(3, 24); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(3, 25); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(3, 26); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(3, 27); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(3, 28); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(4, 17); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(4, 18); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(4, 19); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(4, 20); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(4, 21); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(4, 22); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(4, 23); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(4, 24); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(4, 25); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(4, 26); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(4, 27); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(4, 28); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(1, 29); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(1, 30); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(1, 31); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(2, 29); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(2, 30); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(2, 31); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(3, 29); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(3, 30); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(3, 31); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(4, 29); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(4, 30); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(4, 31); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(1, 32); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(1, 33); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(1, 34); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(1, 35); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(1, 36); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(2, 32); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(2, 33); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(2, 34); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(2, 35); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(2, 36); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(3, 32); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(3, 33); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(3, 34); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(3, 35); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(3, 36); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(4, 32); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(4, 33); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(4, 34); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(4, 35); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(4, 36); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(1, 37); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(1, 38); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(1, 39); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(1, 40); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(1, 41); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(1, 42); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(1, 43); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(1, 44); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(1, 45); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(1, 46); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(1, 47); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(1, 48); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(1, 49); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(1, 50); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(1, 51); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(1, 52); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(1, 53); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(1, 54); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(2, 37); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(2, 38); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(2, 39); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(2, 40); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(2, 41); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(2, 42); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(2, 43); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(2, 44); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(2, 45); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(2, 46); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(2, 47); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(2, 48); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(2, 49); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(2, 50); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(2, 51); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(2, 52); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(2, 53); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(2, 54); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(3, 37); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(3, 38); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(3, 39); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(3, 40); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(3, 41); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(3, 42); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(3, 43); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(3, 44); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(3, 45); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(3, 46); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(3, 47); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(3, 48); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(3, 49); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(3, 50); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(3, 51); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(3, 52); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(3, 53); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(3, 54); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(4, 37); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(4, 38); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(4, 39); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(4, 40); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(4, 41); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(4, 42); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(4, 43); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(4, 44); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(4, 45); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(4, 46); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(4, 47); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(4, 48); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(4, 49); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(4, 50); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(4, 51); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(4, 52); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(4, 53); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(4, 54); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(1, 55); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(1, 56); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(2, 55); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(2, 56); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(3, 55); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(3, 56); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(4, 55); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(4, 56); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(1, 57); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(1, 58); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(2, 57); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(2, 58); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(3, 57); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(3, 58); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(4, 57); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(4, 58); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(1, 59); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(2, 59); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(3, 59); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(4, 59); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(1, 60); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(1, 61); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(1, 62); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(1, 63); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(2, 60); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(2, 61); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(2, 62); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(2, 63); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(3, 60); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(3, 61); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(3, 62); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(3, 63); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(4, 60); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(4, 61); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(4, 62); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(4, 63); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(1, 64); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(1, 65); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(1, 66); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(1, 67); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(2, 64); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(2, 65); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(2, 66); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(2, 67); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(3, 64); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(3, 65); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(3, 66); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(3, 67); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(4, 64); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(4, 65); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(4, 66); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(4, 67); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(1, 68); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(1, 69); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(1, 70); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(1, 71); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(2, 68); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(2, 69); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(2, 70); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(2, 71); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(3, 68); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(3, 69); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(3, 70); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(3, 71); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(4, 68); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(4, 69); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(4, 70); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(4, 71); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(1, 72); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(1, 73); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(1, 74); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(1, 75); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(2, 72); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(2, 73); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(2, 74); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(2, 75); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(3, 72); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(3, 73); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(3, 74); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(3, 75); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(4, 72); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(4, 73); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(4, 74); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(4, 75); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(1, 76); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(1, 77); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(1, 78); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(1, 79); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(1, 80); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(1, 81); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(1, 82); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(1, 83); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(1, 84); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(1, 85); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(1, 86); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(1, 87); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(2, 76); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(2, 77); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(2, 78); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(2, 79); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(2, 80); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(2, 81); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(2, 82); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(2, 83); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(2, 84); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(2, 85); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(2, 86); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(2, 87); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(3, 76); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(3, 77); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(3, 78); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(3, 79); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(3, 80); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(3, 81); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(3, 82); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(3, 83); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(3, 84); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(3, 85); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(3, 86); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(3, 87); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(4, 76); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(4, 77); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(4, 78); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(4, 79); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(4, 80); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(4, 81); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(4, 82); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(4, 83); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(4, 84); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(4, 85); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(4, 86); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(4, 87); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(1, 88); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(1, 89); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(1, 90); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(2, 88); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(2, 89); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(2, 90); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(3, 88); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(3, 89); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(3, 90); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(4, 88); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(4, 89); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(4, 90); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(1, 91); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(1, 92); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(1, 93); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(1, 94); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(1, 95); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(2, 91); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(2, 92); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(2, 93); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(2, 94); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(2, 95); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(3, 91); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(3, 92); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(3, 93); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(3, 94); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(3, 95); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(4, 91); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(4, 92); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(4, 93); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(4, 94); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(4, 95); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(1, 96); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(1, 97); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(1, 98); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(1, 99); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(1, 100); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(1, 101); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(1, 102); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(1, 103); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(1, 104); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(1, 105); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(1, 106); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(1, 107); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(1, 108); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(1, 109); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(1, 110); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(1, 111); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(1, 112); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(1, 113); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(2, 96); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(2, 97); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(2, 98); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(2, 99); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(2, 100); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(2, 101); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(2, 102); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(2, 103); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(2, 104); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(2, 105); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(2, 106); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(2, 107); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(2, 108); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(2, 109); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(2, 110); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(2, 111); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(2, 112); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(2, 113); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(3, 96); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(3, 97); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(3, 98); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(3, 99); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(3, 100); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(3, 101); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(3, 102); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(3, 103); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(3, 104); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(3, 105); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(3, 106); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(3, 107); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(3, 108); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(3, 109); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(3, 110); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(3, 111); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(3, 112); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(3, 113); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(4, 96); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(4, 97); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(4, 98); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(4, 99); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(4, 100); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(4, 101); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(4, 102); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(4, 103); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(4, 104); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(4, 105); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(4, 106); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(4, 107); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(4, 108); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(4, 109); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(4, 110); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(4, 111); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(4, 112); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(4, 113); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(1, 114); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(1, 115); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(2, 114); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(2, 115); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(3, 114); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(3, 115); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(4, 114); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(4, 115); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(1, 116); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(1, 117); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(2, 116); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(2, 117); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(3, 116); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(3, 117); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(4, 116); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(4, 117); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(5, 17); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(5, 18); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(5, 19); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(5, 20); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(5, 21); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(5, 22); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(5, 23); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(5, 24); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(5, 25); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(5, 26); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(5, 27); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(5, 28); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(6, 17); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(6, 18); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(6, 19); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(6, 20); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(6, 21); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(6, 22); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(6, 23); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(6, 24); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(6, 25); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(6, 26); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(6, 27); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(6, 28); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(7, 17); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(7, 18); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(7, 19); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(7, 20); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(7, 21); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(7, 22); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(7, 23); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(7, 24); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(7, 25); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(7, 26); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(7, 27); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(7, 28); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(8, 17); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(8, 18); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(8, 19); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(8, 20); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(8, 21); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(8, 22); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(8, 23); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(8, 24); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(8, 25); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(8, 26); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(8, 27); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(8, 28); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(5, 32); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(5, 33); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(5, 34); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(5, 35); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(5, 36); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(6, 32); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(6, 33); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(6, 34); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(6, 35); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(6, 36); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(7, 32); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(7, 33); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(7, 34); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(7, 35); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(7, 36); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(8, 32); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(8, 33); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(8, 34); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(8, 35); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(8, 36); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(5, 37); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(5, 38); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(5, 39); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(5, 40); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(5, 41); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(5, 42); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(5, 43); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(5, 44); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(5, 45); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(5, 46); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(5, 47); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(5, 48); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(5, 49); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(5, 50); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(5, 51); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(5, 52); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(5, 53); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(5, 54); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(6, 37); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(6, 38); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(6, 39); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(6, 40); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(6, 41); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(6, 42); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(6, 43); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(6, 44); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(6, 45); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(6, 46); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(6, 47); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(6, 48); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(6, 49); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(6, 50); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(6, 51); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(6, 52); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(6, 53); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(6, 54); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(7, 37); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(7, 38); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(7, 39); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(7, 40); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(7, 41); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(7, 42); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(7, 43); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(7, 44); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(7, 45); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(7, 46); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(7, 47); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(7, 48); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(7, 49); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(7, 50); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(7, 51); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(7, 52); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(7, 53); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(7, 54); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(8, 37); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(8, 38); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(8, 39); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(8, 40); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(8, 41); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(8, 42); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(8, 43); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(8, 44); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(8, 45); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(8, 46); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(8, 47); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(8, 48); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(8, 49); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(8, 50); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(8, 51); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(8, 52); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(8, 53); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(8, 54); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(5, 55); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(5, 56); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(6, 55); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(6, 56); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(7, 55); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(7, 56); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(8, 55); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(8, 56); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(5, 57); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(5, 58); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(6, 57); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(6, 58); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(7, 57); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(7, 58); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(8, 57); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(8, 58); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(5, 59); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(6, 59); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(7, 59); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(8, 59); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(5, 60); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(5, 61); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(5, 62); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(5, 63); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(6, 60); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(6, 61); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(6, 62); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(6, 63); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(7, 60); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(7, 61); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(7, 62); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(7, 63); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(8, 60); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(8, 61); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(8, 62); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(8, 63); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(5, 64); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(5, 65); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(5, 66); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(5, 67); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(6, 64); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(6, 65); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(6, 66); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(6, 67); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(7, 64); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(7, 65); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(7, 66); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(7, 67); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(8, 64); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(8, 65); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(8, 66); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(8, 67); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(5, 68); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(5, 69); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(5, 70); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(5, 71); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(6, 68); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(6, 69); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(6, 70); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(6, 71); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(7, 68); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(7, 69); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(7, 70); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(7, 71); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(8, 68); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(8, 69); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(8, 70); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(8, 71); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(5, 72); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(5, 73); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(5, 74); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(5, 75); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(6, 72); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(6, 73); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(6, 74); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(6, 75); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(7, 72); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(7, 73); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(7, 74); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(7, 75); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(8, 72); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(8, 73); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(8, 74); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(8, 75); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(5, 76); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(5, 77); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(5, 78); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(5, 79); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(5, 80); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(5, 81); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(5, 82); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(5, 83); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(5, 84); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(5, 85); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(5, 86); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(5, 87); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(6, 76); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(6, 77); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(6, 78); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(6, 79); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(6, 80); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(6, 81); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(6, 82); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(6, 83); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(6, 84); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(6, 85); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(6, 86); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(6, 87); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(7, 76); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(7, 77); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(7, 78); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(7, 79); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(7, 80); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(7, 81); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(7, 82); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(7, 83); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(7, 84); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(7, 85); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(7, 86); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(7, 87); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(8, 76); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(8, 77); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(8, 78); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(8, 79); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(8, 80); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(8, 81); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(8, 82); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(8, 83); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(8, 84); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(8, 85); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(8, 86); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(8, 87); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(5, 88); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(5, 89); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(5, 90); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(6, 88); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(6, 89); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(6, 90); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(7, 88); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(7, 89); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(7, 90); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(8, 88); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(8, 89); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(8, 90); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(5, 91); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(5, 92); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(5, 93); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(5, 94); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(5, 95); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(6, 91); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(6, 92); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(6, 93); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(6, 94); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(6, 95); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(7, 91); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(7, 92); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(7, 93); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(7, 94); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(7, 95); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(8, 91); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(8, 92); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(8, 93); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(8, 94); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(8, 95); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(5, 96); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(5, 97); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(5, 98); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(5, 99); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(5, 100); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(5, 101); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(5, 102); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(5, 103); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(5, 104); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(5, 105); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(5, 106); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(5, 107); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(5, 108); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(5, 109); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(5, 110); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(5, 111); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(5, 112); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(5, 113); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(6, 96); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(6, 97); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(6, 98); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(6, 99); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(6, 100); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(6, 101); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(6, 102); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(6, 103); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(6, 104); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(6, 105); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(6, 106); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(6, 107); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(6, 108); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(6, 109); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(6, 110); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(6, 111); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(6, 112); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(6, 113); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(7, 96); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(7, 97); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(7, 98); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(7, 99); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(7, 100); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(7, 101); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(7, 102); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(7, 103); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(7, 104); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(7, 105); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(7, 106); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(7, 107); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(7, 108); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(7, 109); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(7, 110); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(7, 111); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(7, 112); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(7, 113); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(8, 96); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(8, 97); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(8, 98); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(8, 99); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(8, 100); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(8, 101); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(8, 102); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(8, 103); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(8, 104); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(8, 105); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(8, 106); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(8, 107); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(8, 108); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(8, 109); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(8, 110); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(8, 111); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(8, 112); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(8, 113); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(5, 114); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(5, 115); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(6, 114); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(6, 115); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(7, 114); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(7, 115); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(8, 114); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(8, 115); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(5, 116); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(5, 117); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(6, 116); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(6, 117); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(7, 116); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(7, 117); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(8, 116); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(8, 117); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(9, 59); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(10, 59); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(11, 59); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(12, 59); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(9, 60); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(9, 61); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(9, 62); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(9, 63); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(10, 60); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(10, 61); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(10, 62); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(10, 63); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(11, 60); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(11, 61); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(11, 62); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(11, 63); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(12, 60); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(12, 61); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(12, 62); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(12, 63); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(9, 64); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(9, 65); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(9, 66); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(9, 67); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(10, 64); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(10, 65); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(10, 66); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(10, 67); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(11, 64); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(11, 65); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(11, 66); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(11, 67); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(12, 64); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(12, 65); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(12, 66); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(12, 67); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(9, 68); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(9, 69); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(9, 70); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(9, 71); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(10, 68); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(10, 69); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(10, 70); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(10, 71); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(11, 68); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(11, 69); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(11, 70); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(11, 71); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(12, 68); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(12, 69); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(12, 70); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(12, 71); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(9, 72); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(9, 73); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(9, 74); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(9, 75); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(10, 72); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(10, 73); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(10, 74); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(10, 75); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(11, 72); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(11, 73); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(11, 74); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(11, 75); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(12, 72); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(12, 73); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(12, 74); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(12, 75); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(9, 76); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(9, 77); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(9, 78); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(9, 79); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(9, 80); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(9, 81); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(9, 82); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(9, 83); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(9, 84); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(9, 85); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(9, 86); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(9, 87); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(10, 76); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(10, 77); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(10, 78); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(10, 79); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(10, 80); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(10, 81); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(10, 82); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(10, 83); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(10, 84); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(10, 85); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(10, 86); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(10, 87); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(11, 76); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(11, 77); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(11, 78); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(11, 79); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(11, 80); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(11, 81); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(11, 82); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(11, 83); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(11, 84); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(11, 85); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(11, 86); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(11, 87); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(12, 76); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(12, 77); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(12, 78); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(12, 79); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(12, 80); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(12, 81); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(12, 82); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(12, 83); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(12, 84); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(12, 85); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(12, 86); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(12, 87); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(9, 88); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(9, 89); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(9, 90); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(10, 88); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(10, 89); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(10, 90); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(11, 88); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(11, 89); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(11, 90); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(12, 88); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(12, 89); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(12, 90); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(9, 91); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(9, 92); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(9, 93); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(9, 94); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(9, 95); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(10, 91); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(10, 92); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(10, 93); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(10, 94); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(10, 95); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(11, 91); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(11, 92); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(11, 93); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(11, 94); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(11, 95); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(12, 91); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(12, 92); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(12, 93); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(12, 94); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(12, 95); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(9, 96); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(9, 97); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(9, 98); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(9, 99); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(9, 100); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(9, 101); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(9, 102); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(9, 103); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(9, 104); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(9, 105); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(9, 106); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(9, 107); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(9, 108); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(9, 109); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(9, 110); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(9, 111); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(9, 112); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(9, 113); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(10, 96); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(10, 97); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(10, 98); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(10, 99); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(10, 100); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(10, 101); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(10, 102); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(10, 103); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(10, 104); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(10, 105); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(10, 106); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(10, 107); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(10, 108); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(10, 109); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(10, 110); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(10, 111); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(10, 112); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(10, 113); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(11, 96); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(11, 97); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(11, 98); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(11, 99); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(11, 100); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(11, 101); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(11, 102); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(11, 103); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(11, 104); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(11, 105); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(11, 106); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(11, 107); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(11, 108); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(11, 109); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(11, 110); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(11, 111); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(11, 112); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(11, 113); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(12, 96); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(12, 97); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(12, 98); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(12, 99); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(12, 100); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(12, 101); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(12, 102); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(12, 103); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(12, 104); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(12, 105); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(12, 106); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(12, 107); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(12, 108); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(12, 109); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(12, 110); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(12, 111); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(12, 112); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(12, 113); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(9, 114); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(9, 115); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(10, 114); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(10, 115); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(11, 114); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(11, 115); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(12, 114); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(12, 115); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(9, 116); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(9, 117); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(10, 116); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(10, 117); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(11, 116); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(11, 117); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(12, 116); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(12, 117); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(13, 59); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(14, 59); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(15, 59); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(16, 59); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(13, 60); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(13, 61); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(13, 62); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(13, 63); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(14, 60); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(14, 61); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(14, 62); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(14, 63); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(15, 60); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(15, 61); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(15, 62); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(15, 63); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(16, 60); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(16, 61); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(16, 62); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(16, 63); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(13, 64); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(13, 65); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(13, 66); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(13, 67); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(14, 64); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(14, 65); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(14, 66); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(14, 67); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(15, 64); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(15, 65); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(15, 66); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(15, 67); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(16, 64); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(16, 65); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(16, 66); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(16, 67); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(13, 68); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(13, 69); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(13, 70); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(13, 71); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(14, 68); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(14, 69); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(14, 70); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(14, 71); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(15, 68); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(15, 69); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(15, 70); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(15, 71); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(16, 68); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(16, 69); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(16, 70); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(16, 71); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(13, 72); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(13, 73); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(13, 74); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(13, 75); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(14, 72); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(14, 73); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(14, 74); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(14, 75); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(15, 72); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(15, 73); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(15, 74); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(15, 75); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(16, 72); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(16, 73); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(16, 74); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(16, 75); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(13, 76); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(13, 77); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(13, 78); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(13, 79); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(13, 80); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(13, 81); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(13, 82); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(13, 83); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(13, 84); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(13, 85); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(13, 86); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(13, 87); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(14, 76); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(14, 77); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(14, 78); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(14, 79); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(14, 80); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(14, 81); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(14, 82); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(14, 83); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(14, 84); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(14, 85); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(14, 86); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(14, 87); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(15, 76); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(15, 77); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(15, 78); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(15, 79); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(15, 80); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(15, 81); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(15, 82); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(15, 83); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(15, 84); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(15, 85); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(15, 86); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(15, 87); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(16, 76); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(16, 77); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(16, 78); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(16, 79); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(16, 80); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(16, 81); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(16, 82); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(16, 83); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(16, 84); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(16, 85); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(16, 86); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(16, 87); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(13, 88); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(13, 89); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(13, 90); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(14, 88); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(14, 89); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(14, 90); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(15, 88); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(15, 89); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(15, 90); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(16, 88); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(16, 89); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(16, 90); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(13, 91); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(13, 92); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(13, 93); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(13, 94); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(13, 95); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(14, 91); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(14, 92); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(14, 93); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(14, 94); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(14, 95); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(15, 91); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(15, 92); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(15, 93); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(15, 94); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(15, 95); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(16, 91); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(16, 92); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(16, 93); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(16, 94); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(16, 95); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(13, 96); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(13, 97); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(13, 98); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(13, 99); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(13, 100); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(13, 101); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(13, 102); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(13, 103); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(13, 104); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(13, 105); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(13, 106); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(13, 107); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(13, 108); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(13, 109); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(13, 110); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(13, 111); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(13, 112); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(13, 113); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(14, 96); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(14, 97); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(14, 98); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(14, 99); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(14, 100); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(14, 101); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(14, 102); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(14, 103); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(14, 104); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(14, 105); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(14, 106); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(14, 107); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(14, 108); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(14, 109); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(14, 110); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(14, 111); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(14, 112); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(14, 113); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(15, 96); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(15, 97); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(15, 98); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(15, 99); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(15, 100); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(15, 101); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(15, 102); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(15, 103); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(15, 104); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(15, 105); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(15, 106); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(15, 107); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(15, 108); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(15, 109); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(15, 110); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(15, 111); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(15, 112); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(15, 113); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(16, 96); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(16, 97); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(16, 98); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(16, 99); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(16, 100); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(16, 101); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(16, 102); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(16, 103); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(16, 104); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(16, 105); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(16, 106); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(16, 107); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(16, 108); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(16, 109); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(16, 110); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(16, 111); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(16, 112); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(16, 113); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(13, 114); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(13, 115); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(14, 114); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(14, 115); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(15, 114); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(15, 115); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(16, 114); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(16, 115); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(13, 116); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(13, 117); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(14, 116); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(14, 117); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(15, 116); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(15, 117); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(16, 116); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(16, 117); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(17, 32); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(17, 33); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(17, 34); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(17, 35); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(17, 36); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(18, 32); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(18, 33); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(18, 34); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(18, 35); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(18, 36); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(19, 32); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(19, 33); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(19, 34); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(19, 35); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(19, 36); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(20, 32); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(20, 33); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(20, 34); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(20, 35); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(20, 36); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(21, 32); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(21, 33); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(21, 34); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(21, 35); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(21, 36); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(22, 32); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(22, 33); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(22, 34); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(22, 35); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(22, 36); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(23, 32); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(23, 33); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(23, 34); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(23, 35); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(23, 36); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(24, 32); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(24, 33); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(24, 34); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(24, 35); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(24, 36); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(25, 32); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(25, 33); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(25, 34); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(25, 35); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(25, 36); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(26, 32); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(26, 33); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(26, 34); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(26, 35); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(26, 36); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(27, 32); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(27, 33); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(27, 34); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(27, 35); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(27, 36); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(28, 32); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(28, 33); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(28, 34); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(28, 35); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(28, 36); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(17, 37); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(17, 38); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(17, 39); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(17, 40); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(17, 41); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(17, 42); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(17, 43); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(17, 44); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(17, 45); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(17, 46); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(17, 47); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(17, 48); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(17, 49); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(17, 50); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(17, 51); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(17, 52); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(17, 53); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(17, 54); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(18, 37); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(18, 38); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(18, 39); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(18, 40); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(18, 41); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(18, 42); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(18, 43); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(18, 44); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(18, 45); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(18, 46); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(18, 47); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(18, 48); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(18, 49); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(18, 50); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(18, 51); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(18, 52); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(18, 53); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(18, 54); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(19, 37); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(19, 38); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(19, 39); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(19, 40); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(19, 41); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(19, 42); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(19, 43); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(19, 44); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(19, 45); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(19, 46); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(19, 47); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(19, 48); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(19, 49); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(19, 50); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(19, 51); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(19, 52); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(19, 53); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(19, 54); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(20, 37); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(20, 38); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(20, 39); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(20, 40); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(20, 41); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(20, 42); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(20, 43); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(20, 44); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(20, 45); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(20, 46); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(20, 47); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(20, 48); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(20, 49); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(20, 50); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(20, 51); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(20, 52); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(20, 53); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(20, 54); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(21, 37); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(21, 38); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(21, 39); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(21, 40); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(21, 41); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(21, 42); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(21, 43); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(21, 44); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(21, 45); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(21, 46); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(21, 47); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(21, 48); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(21, 49); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(21, 50); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(21, 51); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(21, 52); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(21, 53); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(21, 54); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(22, 37); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(22, 38); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(22, 39); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(22, 40); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(22, 41); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(22, 42); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(22, 43); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(22, 44); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(22, 45); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(22, 46); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(22, 47); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(22, 48); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(22, 49); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(22, 50); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(22, 51); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(22, 52); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(22, 53); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(22, 54); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(23, 37); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(23, 38); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(23, 39); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(23, 40); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(23, 41); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(23, 42); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(23, 43); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(23, 44); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(23, 45); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(23, 46); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(23, 47); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(23, 48); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(23, 49); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(23, 50); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(23, 51); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(23, 52); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(23, 53); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(23, 54); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(24, 37); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(24, 38); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(24, 39); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(24, 40); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(24, 41); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(24, 42); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(24, 43); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(24, 44); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(24, 45); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(24, 46); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(24, 47); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(24, 48); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(24, 49); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(24, 50); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(24, 51); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(24, 52); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(24, 53); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(24, 54); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(25, 37); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(25, 38); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(25, 39); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(25, 40); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(25, 41); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(25, 42); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(25, 43); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(25, 44); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(25, 45); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(25, 46); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(25, 47); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(25, 48); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(25, 49); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(25, 50); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(25, 51); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(25, 52); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(25, 53); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(25, 54); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(26, 37); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(26, 38); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(26, 39); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(26, 40); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(26, 41); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(26, 42); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(26, 43); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(26, 44); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(26, 45); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(26, 46); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(26, 47); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(26, 48); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(26, 49); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(26, 50); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(26, 51); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(26, 52); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(26, 53); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(26, 54); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(27, 37); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(27, 38); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(27, 39); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(27, 40); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(27, 41); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(27, 42); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(27, 43); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(27, 44); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(27, 45); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(27, 46); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(27, 47); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(27, 48); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(27, 49); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(27, 50); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(27, 51); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(27, 52); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(27, 53); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(27, 54); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(28, 37); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(28, 38); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(28, 39); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(28, 40); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(28, 41); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(28, 42); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(28, 43); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(28, 44); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(28, 45); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(28, 46); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(28, 47); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(28, 48); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(28, 49); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(28, 50); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(28, 51); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(28, 52); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(28, 53); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(28, 54); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(17, 55); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(17, 56); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(18, 55); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(18, 56); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(19, 55); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(19, 56); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(20, 55); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(20, 56); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(21, 55); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(21, 56); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(22, 55); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(22, 56); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(23, 55); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(23, 56); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(24, 55); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(24, 56); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(25, 55); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(25, 56); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(26, 55); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(26, 56); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(27, 55); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(27, 56); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(28, 55); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(28, 56); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(17, 57); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(17, 58); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(18, 57); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(18, 58); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(19, 57); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(19, 58); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(20, 57); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(20, 58); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(21, 57); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(21, 58); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(22, 57); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(22, 58); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(23, 57); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(23, 58); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(24, 57); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(24, 58); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(25, 57); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(25, 58); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(26, 57); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(26, 58); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(27, 57); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(27, 58); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(28, 57); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(28, 58); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(17, 59); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(18, 59); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(19, 59); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(20, 59); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(21, 59); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(22, 59); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(23, 59); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(24, 59); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(25, 59); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(26, 59); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(27, 59); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(28, 59); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(17, 60); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(17, 61); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(17, 62); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(17, 63); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(18, 60); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(18, 61); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(18, 62); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(18, 63); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(19, 60); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(19, 61); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(19, 62); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(19, 63); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(20, 60); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(20, 61); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(20, 62); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(20, 63); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(21, 60); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(21, 61); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(21, 62); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(21, 63); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(22, 60); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(22, 61); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(22, 62); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(22, 63); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(23, 60); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(23, 61); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(23, 62); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(23, 63); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(24, 60); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(24, 61); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(24, 62); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(24, 63); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(25, 60); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(25, 61); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(25, 62); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(25, 63); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(26, 60); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(26, 61); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(26, 62); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(26, 63); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(27, 60); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(27, 61); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(27, 62); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(27, 63); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(28, 60); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(28, 61); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(28, 62); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(28, 63); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(17, 64); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(17, 65); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(17, 66); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(17, 67); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(18, 64); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(18, 65); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(18, 66); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(18, 67); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(19, 64); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(19, 65); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(19, 66); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(19, 67); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(20, 64); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(20, 65); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(20, 66); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(20, 67); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(21, 64); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(21, 65); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(21, 66); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(21, 67); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(22, 64); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(22, 65); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(22, 66); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(22, 67); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(23, 64); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(23, 65); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(23, 66); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(23, 67); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(24, 64); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(24, 65); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(24, 66); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(24, 67); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(25, 64); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(25, 65); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(25, 66); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(25, 67); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(26, 64); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(26, 65); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(26, 66); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(26, 67); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(27, 64); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(27, 65); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(27, 66); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(27, 67); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(28, 64); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(28, 65); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(28, 66); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(28, 67); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(17, 68); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(17, 69); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(17, 70); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(17, 71); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(18, 68); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(18, 69); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(18, 70); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(18, 71); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(19, 68); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(19, 69); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(19, 70); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(19, 71); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(20, 68); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(20, 69); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(20, 70); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(20, 71); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(21, 68); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(21, 69); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(21, 70); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(21, 71); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(22, 68); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(22, 69); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(22, 70); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(22, 71); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(23, 68); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(23, 69); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(23, 70); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(23, 71); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(24, 68); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(24, 69); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(24, 70); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(24, 71); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(25, 68); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(25, 69); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(25, 70); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(25, 71); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(26, 68); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(26, 69); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(26, 70); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(26, 71); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(27, 68); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(27, 69); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(27, 70); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(27, 71); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(28, 68); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(28, 69); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(28, 70); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(28, 71); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(17, 72); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(17, 73); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(17, 74); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(17, 75); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(18, 72); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(18, 73); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(18, 74); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(18, 75); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(19, 72); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(19, 73); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(19, 74); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(19, 75); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(20, 72); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(20, 73); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(20, 74); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(20, 75); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(21, 72); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(21, 73); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(21, 74); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(21, 75); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(22, 72); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(22, 73); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(22, 74); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(22, 75); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(23, 72); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(23, 73); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(23, 74); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(23, 75); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(24, 72); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(24, 73); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(24, 74); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(24, 75); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(25, 72); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(25, 73); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(25, 74); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(25, 75); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(26, 72); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(26, 73); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(26, 74); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(26, 75); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(27, 72); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(27, 73); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(27, 74); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(27, 75); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(28, 72); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(28, 73); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(28, 74); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(28, 75); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(17, 76); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(17, 77); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(17, 78); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(17, 79); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(17, 80); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(17, 81); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(17, 82); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(17, 83); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(17, 84); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(17, 85); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(17, 86); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(17, 87); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(18, 76); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(18, 77); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(18, 78); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(18, 79); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(18, 80); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(18, 81); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(18, 82); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(18, 83); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(18, 84); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(18, 85); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(18, 86); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(18, 87); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(19, 76); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(19, 77); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(19, 78); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(19, 79); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(19, 80); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(19, 81); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(19, 82); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(19, 83); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(19, 84); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(19, 85); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(19, 86); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(19, 87); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(20, 76); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(20, 77); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(20, 78); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(20, 79); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(20, 80); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(20, 81); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(20, 82); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(20, 83); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(20, 84); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(20, 85); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(20, 86); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(20, 87); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(21, 76); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(21, 77); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(21, 78); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(21, 79); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(21, 80); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(21, 81); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(21, 82); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(21, 83); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(21, 84); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(21, 85); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(21, 86); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(21, 87); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(22, 76); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(22, 77); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(22, 78); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(22, 79); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(22, 80); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(22, 81); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(22, 82); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(22, 83); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(22, 84); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(22, 85); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(22, 86); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(22, 87); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(23, 76); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(23, 77); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(23, 78); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(23, 79); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(23, 80); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(23, 81); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(23, 82); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(23, 83); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(23, 84); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(23, 85); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(23, 86); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(23, 87); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(24, 76); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(24, 77); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(24, 78); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(24, 79); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(24, 80); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(24, 81); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(24, 82); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(24, 83); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(24, 84); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(24, 85); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(24, 86); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(24, 87); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(25, 76); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(25, 77); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(25, 78); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(25, 79); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(25, 80); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(25, 81); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(25, 82); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(25, 83); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(25, 84); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(25, 85); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(25, 86); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(25, 87); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(26, 76); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(26, 77); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(26, 78); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(26, 79); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(26, 80); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(26, 81); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(26, 82); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(26, 83); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(26, 84); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(26, 85); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(26, 86); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(26, 87); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(27, 76); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(27, 77); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(27, 78); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(27, 79); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(27, 80); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(27, 81); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(27, 82); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(27, 83); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(27, 84); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(27, 85); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(27, 86); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(27, 87); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(28, 76); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(28, 77); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(28, 78); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(28, 79); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(28, 80); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(28, 81); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(28, 82); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(28, 83); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(28, 84); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(28, 85); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(28, 86); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(28, 87); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(17, 88); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(17, 89); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(17, 90); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(18, 88); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(18, 89); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(18, 90); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(19, 88); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(19, 89); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(19, 90); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(20, 88); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(20, 89); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(20, 90); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(21, 88); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(21, 89); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(21, 90); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(22, 88); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(22, 89); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(22, 90); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(23, 88); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(23, 89); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(23, 90); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(24, 88); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(24, 89); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(24, 90); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(25, 88); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(25, 89); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(25, 90); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(26, 88); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(26, 89); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(26, 90); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(27, 88); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(27, 89); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(27, 90); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(28, 88); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(28, 89); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(28, 90); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(17, 91); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(17, 92); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(17, 93); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(17, 94); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(17, 95); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(18, 91); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(18, 92); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(18, 93); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(18, 94); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(18, 95); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(19, 91); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(19, 92); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(19, 93); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(19, 94); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(19, 95); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(20, 91); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(20, 92); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(20, 93); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(20, 94); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(20, 95); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(21, 91); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(21, 92); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(21, 93); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(21, 94); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(21, 95); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(22, 91); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(22, 92); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(22, 93); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(22, 94); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(22, 95); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(23, 91); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(23, 92); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(23, 93); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(23, 94); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(23, 95); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(24, 91); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(24, 92); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(24, 93); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(24, 94); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(24, 95); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(25, 91); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(25, 92); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(25, 93); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(25, 94); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(25, 95); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(26, 91); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(26, 92); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(26, 93); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(26, 94); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(26, 95); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(27, 91); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(27, 92); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(27, 93); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(27, 94); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(27, 95); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(28, 91); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(28, 92); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(28, 93); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(28, 94); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(28, 95); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(17, 96); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(17, 97); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(17, 98); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(17, 99); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(17, 100); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(17, 101); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(17, 102); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(17, 103); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(17, 104); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(17, 105); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(17, 106); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(17, 107); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(17, 108); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(17, 109); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(17, 110); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(17, 111); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(17, 112); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(17, 113); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(18, 96); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(18, 97); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(18, 98); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(18, 99); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(18, 100); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(18, 101); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(18, 102); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(18, 103); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(18, 104); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(18, 105); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(18, 106); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(18, 107); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(18, 108); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(18, 109); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(18, 110); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(18, 111); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(18, 112); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(18, 113); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(19, 96); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(19, 97); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(19, 98); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(19, 99); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(19, 100); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(19, 101); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(19, 102); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(19, 103); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(19, 104); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(19, 105); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(19, 106); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(19, 107); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(19, 108); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(19, 109); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(19, 110); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(19, 111); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(19, 112); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(19, 113); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(20, 96); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(20, 97); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(20, 98); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(20, 99); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(20, 100); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(20, 101); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(20, 102); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(20, 103); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(20, 104); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(20, 105); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(20, 106); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(20, 107); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(20, 108); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(20, 109); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(20, 110); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(20, 111); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(20, 112); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(20, 113); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(21, 96); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(21, 97); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(21, 98); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(21, 99); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(21, 100); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(21, 101); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(21, 102); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(21, 103); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(21, 104); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(21, 105); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(21, 106); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(21, 107); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(21, 108); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(21, 109); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(21, 110); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(21, 111); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(21, 112); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(21, 113); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(22, 96); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(22, 97); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(22, 98); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(22, 99); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(22, 100); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(22, 101); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(22, 102); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(22, 103); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(22, 104); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(22, 105); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(22, 106); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(22, 107); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(22, 108); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(22, 109); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(22, 110); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(22, 111); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(22, 112); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(22, 113); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(23, 96); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(23, 97); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(23, 98); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(23, 99); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(23, 100); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(23, 101); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(23, 102); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(23, 103); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(23, 104); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(23, 105); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(23, 106); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(23, 107); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(23, 108); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(23, 109); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(23, 110); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(23, 111); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(23, 112); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(23, 113); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(24, 96); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(24, 97); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(24, 98); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(24, 99); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(24, 100); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(24, 101); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(24, 102); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(24, 103); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(24, 104); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(24, 105); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(24, 106); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(24, 107); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(24, 108); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(24, 109); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(24, 110); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(24, 111); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(24, 112); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(24, 113); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(25, 96); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(25, 97); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(25, 98); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(25, 99); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(25, 100); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(25, 101); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(25, 102); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(25, 103); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(25, 104); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(25, 105); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(25, 106); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(25, 107); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(25, 108); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(25, 109); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(25, 110); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(25, 111); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(25, 112); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(25, 113); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(26, 96); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(26, 97); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(26, 98); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(26, 99); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(26, 100); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(26, 101); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(26, 102); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(26, 103); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(26, 104); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(26, 105); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(26, 106); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(26, 107); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(26, 108); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(26, 109); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(26, 110); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(26, 111); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(26, 112); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(26, 113); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(27, 96); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(27, 97); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(27, 98); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(27, 99); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(27, 100); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(27, 101); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(27, 102); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(27, 103); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(27, 104); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(27, 105); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(27, 106); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(27, 107); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(27, 108); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(27, 109); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(27, 110); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(27, 111); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(27, 112); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(27, 113); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(28, 96); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(28, 97); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(28, 98); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(28, 99); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(28, 100); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(28, 101); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(28, 102); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(28, 103); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(28, 104); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(28, 105); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(28, 106); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(28, 107); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(28, 108); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(28, 109); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(28, 110); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(28, 111); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(28, 112); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(28, 113); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(17, 114); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(17, 115); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(18, 114); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(18, 115); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(19, 114); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(19, 115); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(20, 114); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(20, 115); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(21, 114); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(21, 115); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(22, 114); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(22, 115); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(23, 114); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(23, 115); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(24, 114); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(24, 115); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(25, 114); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(25, 115); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(26, 114); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(26, 115); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(27, 114); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(27, 115); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(28, 114); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(28, 115); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(17, 116); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(17, 117); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(18, 116); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(18, 117); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(19, 116); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(19, 117); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(20, 116); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(20, 117); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(21, 116); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(21, 117); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(22, 116); + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(22, 117); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(23, 116); + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(23, 117); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(24, 116); + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(24, 117); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(25, 116); + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(25, 117); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(26, 116); + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(26, 117); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(27, 116); + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(27, 117); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(28, 116); + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(28, 117); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(29, 59); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(30, 59); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(31, 59); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(29, 60); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(29, 61); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(29, 62); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(29, 63); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(30, 60); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(30, 61); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(30, 62); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(30, 63); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(31, 60); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(31, 61); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(31, 62); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(31, 63); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(29, 64); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(29, 65); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(29, 66); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(29, 67); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(30, 64); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(30, 65); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(30, 66); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(30, 67); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(31, 64); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(31, 65); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(31, 66); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(31, 67); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(29, 68); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(29, 69); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(29, 70); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(29, 71); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(30, 68); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(30, 69); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(30, 70); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(30, 71); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(31, 68); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(31, 69); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(31, 70); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(31, 71); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(29, 72); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(29, 73); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(29, 74); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(29, 75); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(30, 72); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(30, 73); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(30, 74); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(30, 75); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(31, 72); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(31, 73); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(31, 74); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(31, 75); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(29, 76); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(29, 77); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(29, 78); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(29, 79); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(29, 80); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(29, 81); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(29, 82); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(29, 83); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(29, 84); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(29, 85); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(29, 86); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(29, 87); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(30, 76); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(30, 77); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(30, 78); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(30, 79); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(30, 80); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(30, 81); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(30, 82); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(30, 83); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(30, 84); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(30, 85); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(30, 86); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(30, 87); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(31, 76); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(31, 77); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(31, 78); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(31, 79); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(31, 80); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(31, 81); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(31, 82); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(31, 83); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(31, 84); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(31, 85); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(31, 86); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(31, 87); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(29, 88); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(29, 89); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(29, 90); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(30, 88); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(30, 89); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(30, 90); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(31, 88); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(31, 89); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(31, 90); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(29, 91); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(29, 92); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(29, 93); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(29, 94); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(29, 95); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(30, 91); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(30, 92); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(30, 93); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(30, 94); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(30, 95); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(31, 91); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(31, 92); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(31, 93); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(31, 94); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(31, 95); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(29, 96); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(29, 97); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(29, 98); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(29, 99); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(29, 100); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(29, 101); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(29, 102); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(29, 103); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(29, 104); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(29, 105); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(29, 106); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(29, 107); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(29, 108); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(29, 109); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(29, 110); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(29, 111); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(29, 112); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(29, 113); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(30, 96); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(30, 97); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(30, 98); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(30, 99); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(30, 100); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(30, 101); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(30, 102); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(30, 103); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(30, 104); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(30, 105); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(30, 106); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(30, 107); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(30, 108); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(30, 109); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(30, 110); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(30, 111); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(30, 112); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(30, 113); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(31, 96); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(31, 97); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(31, 98); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(31, 99); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(31, 100); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(31, 101); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(31, 102); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(31, 103); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(31, 104); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(31, 105); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(31, 106); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(31, 107); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(31, 108); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(31, 109); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(31, 110); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(31, 111); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(31, 112); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(31, 113); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(29, 114); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(29, 115); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(30, 114); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(30, 115); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(31, 114); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(31, 115); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(29, 116); + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(29, 117); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(30, 116); + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(30, 117); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(31, 116); + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(31, 117); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(32, 59); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(33, 59); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(34, 59); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(35, 59); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(36, 59); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(32, 60); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(32, 61); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(32, 62); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(32, 63); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(33, 60); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(33, 61); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(33, 62); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(33, 63); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(34, 60); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(34, 61); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(34, 62); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(34, 63); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(35, 60); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(35, 61); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(35, 62); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(35, 63); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(36, 60); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(36, 61); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(36, 62); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(36, 63); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(32, 64); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(32, 65); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(32, 66); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(32, 67); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(33, 64); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(33, 65); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(33, 66); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(33, 67); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(34, 64); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(34, 65); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(34, 66); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(34, 67); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(35, 64); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(35, 65); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(35, 66); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(35, 67); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(36, 64); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(36, 65); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(36, 66); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(36, 67); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(32, 68); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(32, 69); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(32, 70); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(32, 71); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(33, 68); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(33, 69); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(33, 70); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(33, 71); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(34, 68); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(34, 69); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(34, 70); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(34, 71); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(35, 68); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(35, 69); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(35, 70); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(35, 71); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(36, 68); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(36, 69); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(36, 70); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(36, 71); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(32, 72); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(32, 73); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(32, 74); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(32, 75); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(33, 72); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(33, 73); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(33, 74); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(33, 75); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(34, 72); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(34, 73); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(34, 74); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(34, 75); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(35, 72); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(35, 73); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(35, 74); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(35, 75); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(36, 72); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(36, 73); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(36, 74); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(36, 75); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(32, 76); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(32, 77); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(32, 78); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(32, 79); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(32, 80); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(32, 81); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(32, 82); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(32, 83); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(32, 84); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(32, 85); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(32, 86); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(32, 87); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(33, 76); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(33, 77); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(33, 78); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(33, 79); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(33, 80); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(33, 81); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(33, 82); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(33, 83); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(33, 84); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(33, 85); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(33, 86); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(33, 87); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(34, 76); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(34, 77); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(34, 78); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(34, 79); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(34, 80); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(34, 81); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(34, 82); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(34, 83); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(34, 84); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(34, 85); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(34, 86); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(34, 87); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(35, 76); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(35, 77); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(35, 78); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(35, 79); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(35, 80); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(35, 81); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(35, 82); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(35, 83); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(35, 84); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(35, 85); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(35, 86); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(35, 87); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(36, 76); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(36, 77); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(36, 78); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(36, 79); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(36, 80); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(36, 81); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(36, 82); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(36, 83); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(36, 84); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(36, 85); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(36, 86); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(36, 87); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(32, 88); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(32, 89); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(32, 90); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(33, 88); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(33, 89); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(33, 90); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(34, 88); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(34, 89); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(34, 90); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(35, 88); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(35, 89); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(35, 90); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(36, 88); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(36, 89); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(36, 90); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(32, 91); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(32, 92); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(32, 93); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(32, 94); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(32, 95); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(33, 91); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(33, 92); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(33, 93); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(33, 94); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(33, 95); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(34, 91); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(34, 92); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(34, 93); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(34, 94); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(34, 95); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(35, 91); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(35, 92); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(35, 93); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(35, 94); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(35, 95); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(36, 91); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(36, 92); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(36, 93); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(36, 94); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(36, 95); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(32, 96); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(32, 97); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(32, 98); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(32, 99); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(32, 100); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(32, 101); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(32, 102); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(32, 103); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(32, 104); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(32, 105); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(32, 106); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(32, 107); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(32, 108); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(32, 109); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(32, 110); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(32, 111); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(32, 112); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(32, 113); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(33, 96); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(33, 97); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(33, 98); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(33, 99); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(33, 100); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(33, 101); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(33, 102); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(33, 103); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(33, 104); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(33, 105); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(33, 106); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(33, 107); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(33, 108); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(33, 109); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(33, 110); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(33, 111); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(33, 112); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(33, 113); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(34, 96); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(34, 97); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(34, 98); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(34, 99); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(34, 100); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(34, 101); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(34, 102); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(34, 103); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(34, 104); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(34, 105); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(34, 106); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(34, 107); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(34, 108); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(34, 109); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(34, 110); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(34, 111); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(34, 112); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(34, 113); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(35, 96); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(35, 97); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(35, 98); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(35, 99); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(35, 100); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(35, 101); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(35, 102); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(35, 103); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(35, 104); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(35, 105); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(35, 106); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(35, 107); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(35, 108); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(35, 109); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(35, 110); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(35, 111); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(35, 112); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(35, 113); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(36, 96); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(36, 97); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(36, 98); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(36, 99); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(36, 100); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(36, 101); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(36, 102); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(36, 103); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(36, 104); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(36, 105); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(36, 106); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(36, 107); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(36, 108); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(36, 109); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(36, 110); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(36, 111); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(36, 112); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(36, 113); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(32, 114); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(32, 115); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(33, 114); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(33, 115); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(34, 114); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(34, 115); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(35, 114); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(35, 115); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(36, 114); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(36, 115); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(32, 116); + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(32, 117); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(33, 116); + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(33, 117); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(34, 116); + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(34, 117); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(35, 116); + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(35, 117); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(36, 116); + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(36, 117); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(37, 59); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(38, 59); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(39, 59); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(40, 59); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(41, 59); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(42, 59); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(43, 59); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(44, 59); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(45, 59); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(46, 59); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(47, 59); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(48, 59); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(49, 59); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(50, 59); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(51, 59); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(52, 59); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(53, 59); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(54, 59); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(37, 60); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(37, 61); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(37, 62); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(37, 63); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(38, 60); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(38, 61); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(38, 62); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(38, 63); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(39, 60); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(39, 61); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(39, 62); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(39, 63); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(40, 60); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(40, 61); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(40, 62); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(40, 63); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(41, 60); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(41, 61); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(41, 62); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(41, 63); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(42, 60); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(42, 61); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(42, 62); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(42, 63); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(43, 60); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(43, 61); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(43, 62); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(43, 63); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(44, 60); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(44, 61); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(44, 62); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(44, 63); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(45, 60); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(45, 61); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(45, 62); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(45, 63); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(46, 60); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(46, 61); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(46, 62); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(46, 63); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(47, 60); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(47, 61); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(47, 62); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(47, 63); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(48, 60); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(48, 61); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(48, 62); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(48, 63); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(49, 60); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(49, 61); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(49, 62); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(49, 63); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(50, 60); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(50, 61); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(50, 62); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(50, 63); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(51, 60); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(51, 61); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(51, 62); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(51, 63); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(52, 60); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(52, 61); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(52, 62); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(52, 63); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(53, 60); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(53, 61); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(53, 62); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(53, 63); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(54, 60); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(54, 61); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(54, 62); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(54, 63); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(37, 64); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(37, 65); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(37, 66); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(37, 67); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(38, 64); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(38, 65); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(38, 66); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(38, 67); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(39, 64); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(39, 65); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(39, 66); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(39, 67); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(40, 64); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(40, 65); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(40, 66); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(40, 67); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(41, 64); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(41, 65); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(41, 66); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(41, 67); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(42, 64); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(42, 65); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(42, 66); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(42, 67); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(43, 64); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(43, 65); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(43, 66); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(43, 67); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(44, 64); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(44, 65); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(44, 66); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(44, 67); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(45, 64); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(45, 65); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(45, 66); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(45, 67); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(46, 64); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(46, 65); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(46, 66); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(46, 67); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(47, 64); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(47, 65); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(47, 66); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(47, 67); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(48, 64); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(48, 65); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(48, 66); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(48, 67); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(49, 64); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(49, 65); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(49, 66); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(49, 67); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(50, 64); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(50, 65); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(50, 66); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(50, 67); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(51, 64); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(51, 65); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(51, 66); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(51, 67); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(52, 64); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(52, 65); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(52, 66); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(52, 67); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(53, 64); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(53, 65); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(53, 66); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(53, 67); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(54, 64); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(54, 65); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(54, 66); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(54, 67); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(37, 68); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(37, 69); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(37, 70); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(37, 71); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(38, 68); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(38, 69); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(38, 70); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(38, 71); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(39, 68); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(39, 69); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(39, 70); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(39, 71); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(40, 68); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(40, 69); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(40, 70); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(40, 71); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(41, 68); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(41, 69); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(41, 70); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(41, 71); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(42, 68); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(42, 69); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(42, 70); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(42, 71); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(43, 68); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(43, 69); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(43, 70); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(43, 71); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(44, 68); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(44, 69); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(44, 70); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(44, 71); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(45, 68); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(45, 69); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(45, 70); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(45, 71); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(46, 68); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(46, 69); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(46, 70); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(46, 71); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(47, 68); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(47, 69); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(47, 70); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(47, 71); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(48, 68); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(48, 69); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(48, 70); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(48, 71); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(49, 68); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(49, 69); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(49, 70); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(49, 71); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(50, 68); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(50, 69); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(50, 70); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(50, 71); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(51, 68); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(51, 69); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(51, 70); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(51, 71); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(52, 68); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(52, 69); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(52, 70); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(52, 71); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(53, 68); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(53, 69); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(53, 70); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(53, 71); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(54, 68); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(54, 69); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(54, 70); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(54, 71); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(37, 72); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(37, 73); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(37, 74); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(37, 75); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(38, 72); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(38, 73); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(38, 74); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(38, 75); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(39, 72); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(39, 73); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(39, 74); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(39, 75); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(40, 72); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(40, 73); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(40, 74); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(40, 75); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(41, 72); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(41, 73); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(41, 74); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(41, 75); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(42, 72); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(42, 73); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(42, 74); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(42, 75); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(43, 72); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(43, 73); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(43, 74); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(43, 75); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(44, 72); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(44, 73); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(44, 74); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(44, 75); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(45, 72); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(45, 73); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(45, 74); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(45, 75); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(46, 72); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(46, 73); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(46, 74); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(46, 75); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(47, 72); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(47, 73); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(47, 74); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(47, 75); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(48, 72); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(48, 73); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(48, 74); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(48, 75); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(49, 72); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(49, 73); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(49, 74); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(49, 75); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(50, 72); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(50, 73); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(50, 74); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(50, 75); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(51, 72); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(51, 73); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(51, 74); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(51, 75); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(52, 72); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(52, 73); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(52, 74); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(52, 75); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(53, 72); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(53, 73); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(53, 74); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(53, 75); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(54, 72); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(54, 73); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(54, 74); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(54, 75); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(37, 76); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(37, 77); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(37, 78); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(37, 79); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(37, 80); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(37, 81); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(37, 82); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(37, 83); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(37, 84); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(37, 85); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(37, 86); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(37, 87); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(38, 76); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(38, 77); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(38, 78); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(38, 79); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(38, 80); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(38, 81); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(38, 82); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(38, 83); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(38, 84); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(38, 85); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(38, 86); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(38, 87); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(39, 76); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(39, 77); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(39, 78); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(39, 79); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(39, 80); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(39, 81); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(39, 82); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(39, 83); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(39, 84); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(39, 85); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(39, 86); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(39, 87); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(40, 76); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(40, 77); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(40, 78); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(40, 79); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(40, 80); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(40, 81); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(40, 82); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(40, 83); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(40, 84); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(40, 85); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(40, 86); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(40, 87); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(41, 76); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(41, 77); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(41, 78); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(41, 79); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(41, 80); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(41, 81); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(41, 82); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(41, 83); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(41, 84); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(41, 85); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(41, 86); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(41, 87); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(42, 76); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(42, 77); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(42, 78); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(42, 79); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(42, 80); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(42, 81); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(42, 82); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(42, 83); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(42, 84); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(42, 85); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(42, 86); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(42, 87); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(43, 76); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(43, 77); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(43, 78); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(43, 79); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(43, 80); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(43, 81); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(43, 82); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(43, 83); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(43, 84); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(43, 85); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(43, 86); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(43, 87); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(44, 76); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(44, 77); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(44, 78); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(44, 79); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(44, 80); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(44, 81); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(44, 82); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(44, 83); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(44, 84); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(44, 85); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(44, 86); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(44, 87); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(45, 76); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(45, 77); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(45, 78); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(45, 79); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(45, 80); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(45, 81); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(45, 82); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(45, 83); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(45, 84); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(45, 85); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(45, 86); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(45, 87); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(46, 76); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(46, 77); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(46, 78); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(46, 79); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(46, 80); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(46, 81); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(46, 82); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(46, 83); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(46, 84); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(46, 85); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(46, 86); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(46, 87); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(47, 76); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(47, 77); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(47, 78); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(47, 79); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(47, 80); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(47, 81); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(47, 82); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(47, 83); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(47, 84); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(47, 85); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(47, 86); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(47, 87); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(48, 76); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(48, 77); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(48, 78); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(48, 79); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(48, 80); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(48, 81); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(48, 82); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(48, 83); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(48, 84); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(48, 85); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(48, 86); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(48, 87); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(49, 76); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(49, 77); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(49, 78); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(49, 79); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(49, 80); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(49, 81); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(49, 82); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(49, 83); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(49, 84); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(49, 85); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(49, 86); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(49, 87); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(50, 76); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(50, 77); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(50, 78); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(50, 79); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(50, 80); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(50, 81); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(50, 82); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(50, 83); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(50, 84); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(50, 85); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(50, 86); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(50, 87); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(51, 76); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(51, 77); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(51, 78); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(51, 79); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(51, 80); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(51, 81); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(51, 82); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(51, 83); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(51, 84); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(51, 85); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(51, 86); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(51, 87); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(52, 76); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(52, 77); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(52, 78); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(52, 79); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(52, 80); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(52, 81); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(52, 82); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(52, 83); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(52, 84); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(52, 85); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(52, 86); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(52, 87); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(53, 76); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(53, 77); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(53, 78); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(53, 79); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(53, 80); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(53, 81); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(53, 82); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(53, 83); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(53, 84); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(53, 85); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(53, 86); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(53, 87); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(54, 76); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(54, 77); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(54, 78); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(54, 79); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(54, 80); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(54, 81); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(54, 82); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(54, 83); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(54, 84); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(54, 85); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(54, 86); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(54, 87); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(37, 88); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(37, 89); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(37, 90); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(38, 88); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(38, 89); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(38, 90); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(39, 88); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(39, 89); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(39, 90); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(40, 88); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(40, 89); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(40, 90); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(41, 88); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(41, 89); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(41, 90); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(42, 88); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(42, 89); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(42, 90); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(43, 88); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(43, 89); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(43, 90); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(44, 88); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(44, 89); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(44, 90); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(45, 88); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(45, 89); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(45, 90); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(46, 88); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(46, 89); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(46, 90); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(47, 88); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(47, 89); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(47, 90); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(48, 88); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(48, 89); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(48, 90); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(49, 88); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(49, 89); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(49, 90); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(50, 88); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(50, 89); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(50, 90); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(51, 88); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(51, 89); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(51, 90); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(52, 88); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(52, 89); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(52, 90); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(53, 88); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(53, 89); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(53, 90); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(54, 88); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(54, 89); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(54, 90); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(37, 91); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(37, 92); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(37, 93); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(37, 94); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(37, 95); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(38, 91); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(38, 92); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(38, 93); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(38, 94); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(38, 95); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(39, 91); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(39, 92); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(39, 93); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(39, 94); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(39, 95); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(40, 91); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(40, 92); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(40, 93); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(40, 94); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(40, 95); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(41, 91); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(41, 92); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(41, 93); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(41, 94); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(41, 95); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(42, 91); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(42, 92); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(42, 93); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(42, 94); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(42, 95); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(43, 91); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(43, 92); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(43, 93); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(43, 94); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(43, 95); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(44, 91); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(44, 92); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(44, 93); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(44, 94); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(44, 95); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(45, 91); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(45, 92); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(45, 93); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(45, 94); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(45, 95); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(46, 91); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(46, 92); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(46, 93); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(46, 94); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(46, 95); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(47, 91); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(47, 92); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(47, 93); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(47, 94); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(47, 95); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(48, 91); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(48, 92); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(48, 93); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(48, 94); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(48, 95); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(49, 91); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(49, 92); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(49, 93); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(49, 94); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(49, 95); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(50, 91); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(50, 92); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(50, 93); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(50, 94); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(50, 95); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(51, 91); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(51, 92); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(51, 93); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(51, 94); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(51, 95); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(52, 91); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(52, 92); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(52, 93); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(52, 94); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(52, 95); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(53, 91); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(53, 92); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(53, 93); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(53, 94); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(53, 95); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(54, 91); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(54, 92); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(54, 93); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(54, 94); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(54, 95); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(37, 96); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(37, 97); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(37, 98); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(37, 99); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(37, 100); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(37, 101); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(37, 102); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(37, 103); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(37, 104); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(37, 105); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(37, 106); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(37, 107); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(37, 108); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(37, 109); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(37, 110); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(37, 111); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(37, 112); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(37, 113); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(38, 96); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(38, 97); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(38, 98); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(38, 99); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(38, 100); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(38, 101); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(38, 102); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(38, 103); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(38, 104); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(38, 105); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(38, 106); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(38, 107); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(38, 108); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(38, 109); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(38, 110); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(38, 111); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(38, 112); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(38, 113); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(39, 96); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(39, 97); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(39, 98); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(39, 99); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(39, 100); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(39, 101); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(39, 102); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(39, 103); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(39, 104); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(39, 105); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(39, 106); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(39, 107); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(39, 108); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(39, 109); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(39, 110); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(39, 111); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(39, 112); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(39, 113); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(40, 96); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(40, 97); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(40, 98); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(40, 99); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(40, 100); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(40, 101); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(40, 102); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(40, 103); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(40, 104); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(40, 105); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(40, 106); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(40, 107); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(40, 108); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(40, 109); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(40, 110); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(40, 111); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(40, 112); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(40, 113); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(41, 96); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(41, 97); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(41, 98); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(41, 99); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(41, 100); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(41, 101); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(41, 102); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(41, 103); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(41, 104); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(41, 105); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(41, 106); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(41, 107); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(41, 108); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(41, 109); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(41, 110); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(41, 111); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(41, 112); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(41, 113); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(42, 96); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(42, 97); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(42, 98); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(42, 99); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(42, 100); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(42, 101); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(42, 102); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(42, 103); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(42, 104); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(42, 105); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(42, 106); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(42, 107); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(42, 108); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(42, 109); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(42, 110); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(42, 111); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(42, 112); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(42, 113); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(43, 96); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(43, 97); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(43, 98); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(43, 99); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(43, 100); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(43, 101); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(43, 102); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(43, 103); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(43, 104); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(43, 105); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(43, 106); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(43, 107); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(43, 108); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(43, 109); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(43, 110); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(43, 111); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(43, 112); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(43, 113); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(44, 96); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(44, 97); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(44, 98); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(44, 99); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(44, 100); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(44, 101); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(44, 102); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(44, 103); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(44, 104); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(44, 105); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(44, 106); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(44, 107); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(44, 108); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(44, 109); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(44, 110); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(44, 111); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(44, 112); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(44, 113); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(45, 96); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(45, 97); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(45, 98); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(45, 99); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(45, 100); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(45, 101); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(45, 102); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(45, 103); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(45, 104); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(45, 105); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(45, 106); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(45, 107); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(45, 108); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(45, 109); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(45, 110); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(45, 111); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(45, 112); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(45, 113); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(46, 96); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(46, 97); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(46, 98); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(46, 99); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(46, 100); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(46, 101); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(46, 102); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(46, 103); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(46, 104); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(46, 105); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(46, 106); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(46, 107); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(46, 108); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(46, 109); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(46, 110); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(46, 111); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(46, 112); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(46, 113); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(47, 96); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(47, 97); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(47, 98); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(47, 99); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(47, 100); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(47, 101); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(47, 102); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(47, 103); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(47, 104); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(47, 105); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(47, 106); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(47, 107); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(47, 108); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(47, 109); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(47, 110); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(47, 111); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(47, 112); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(47, 113); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(48, 96); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(48, 97); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(48, 98); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(48, 99); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(48, 100); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(48, 101); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(48, 102); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(48, 103); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(48, 104); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(48, 105); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(48, 106); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(48, 107); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(48, 108); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(48, 109); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(48, 110); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(48, 111); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(48, 112); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(48, 113); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(49, 96); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(49, 97); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(49, 98); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(49, 99); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(49, 100); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(49, 101); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(49, 102); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(49, 103); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(49, 104); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(49, 105); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(49, 106); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(49, 107); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(49, 108); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(49, 109); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(49, 110); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(49, 111); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(49, 112); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(49, 113); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(50, 96); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(50, 97); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(50, 98); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(50, 99); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(50, 100); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(50, 101); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(50, 102); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(50, 103); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(50, 104); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(50, 105); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(50, 106); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(50, 107); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(50, 108); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(50, 109); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(50, 110); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(50, 111); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(50, 112); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(50, 113); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(51, 96); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(51, 97); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(51, 98); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(51, 99); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(51, 100); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(51, 101); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(51, 102); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(51, 103); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(51, 104); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(51, 105); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(51, 106); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(51, 107); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(51, 108); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(51, 109); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(51, 110); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(51, 111); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(51, 112); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(51, 113); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(52, 96); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(52, 97); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(52, 98); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(52, 99); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(52, 100); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(52, 101); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(52, 102); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(52, 103); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(52, 104); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(52, 105); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(52, 106); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(52, 107); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(52, 108); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(52, 109); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(52, 110); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(52, 111); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(52, 112); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(52, 113); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(53, 96); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(53, 97); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(53, 98); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(53, 99); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(53, 100); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(53, 101); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(53, 102); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(53, 103); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(53, 104); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(53, 105); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(53, 106); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(53, 107); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(53, 108); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(53, 109); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(53, 110); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(53, 111); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(53, 112); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(53, 113); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(54, 96); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(54, 97); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(54, 98); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(54, 99); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(54, 100); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(54, 101); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(54, 102); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(54, 103); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(54, 104); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(54, 105); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(54, 106); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(54, 107); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(54, 108); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(54, 109); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(54, 110); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(54, 111); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(54, 112); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(54, 113); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(37, 114); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(37, 115); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(38, 114); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(38, 115); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(39, 114); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(39, 115); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(40, 114); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(40, 115); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(41, 114); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(41, 115); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(42, 114); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(42, 115); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(43, 114); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(43, 115); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(44, 114); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(44, 115); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(45, 114); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(45, 115); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(46, 114); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(46, 115); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(47, 114); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(47, 115); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(48, 114); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(48, 115); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(49, 114); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(49, 115); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(50, 114); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(50, 115); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(51, 114); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(51, 115); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(52, 114); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(52, 115); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(53, 114); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(53, 115); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(54, 114); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(54, 115); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(37, 116); + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(37, 117); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(38, 116); + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(38, 117); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(39, 116); + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(39, 117); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(40, 116); + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(40, 117); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(41, 116); + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(41, 117); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(42, 116); + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(42, 117); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(43, 116); + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(43, 117); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(44, 116); + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(44, 117); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(45, 116); + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(45, 117); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(46, 116); + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(46, 117); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(47, 116); + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(47, 117); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(48, 116); + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(48, 117); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(49, 116); + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(49, 117); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(50, 116); + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(50, 117); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(51, 116); + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(51, 117); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(52, 116); + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(52, 117); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(53, 116); + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(53, 117); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(54, 116); + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(54, 117); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(55, 59); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(56, 59); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(55, 60); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(55, 61); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(55, 62); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(55, 63); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(56, 60); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(56, 61); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(56, 62); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(56, 63); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(55, 64); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(55, 65); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(55, 66); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(55, 67); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(56, 64); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(56, 65); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(56, 66); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(56, 67); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(55, 68); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(55, 69); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(55, 70); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(55, 71); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(56, 68); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(56, 69); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(56, 70); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(56, 71); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(55, 72); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(55, 73); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(55, 74); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(55, 75); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(56, 72); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(56, 73); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(56, 74); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(56, 75); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(55, 76); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(55, 77); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(55, 78); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(55, 79); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(55, 80); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(55, 81); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(55, 82); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(55, 83); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(55, 84); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(55, 85); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(55, 86); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(55, 87); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(56, 76); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(56, 77); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(56, 78); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(56, 79); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(56, 80); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(56, 81); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(56, 82); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(56, 83); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(56, 84); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(56, 85); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(56, 86); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(56, 87); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(55, 88); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(55, 89); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(55, 90); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(56, 88); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(56, 89); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(56, 90); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(55, 91); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(55, 92); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(55, 93); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(55, 94); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(55, 95); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(56, 91); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(56, 92); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(56, 93); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(56, 94); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(56, 95); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(55, 96); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(55, 97); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(55, 98); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(55, 99); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(55, 100); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(55, 101); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(55, 102); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(55, 103); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(55, 104); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(55, 105); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(55, 106); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(55, 107); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(55, 108); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(55, 109); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(55, 110); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(55, 111); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(55, 112); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(55, 113); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(56, 96); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(56, 97); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(56, 98); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(56, 99); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(56, 100); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(56, 101); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(56, 102); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(56, 103); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(56, 104); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(56, 105); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(56, 106); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(56, 107); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(56, 108); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(56, 109); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(56, 110); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(56, 111); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(56, 112); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(56, 113); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(55, 114); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(55, 115); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(56, 114); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(56, 115); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(55, 116); + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(55, 117); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(56, 116); + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(56, 117); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(57, 59); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(58, 59); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(57, 60); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(57, 61); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(57, 62); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(57, 63); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(58, 60); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(58, 61); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(58, 62); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(58, 63); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(57, 64); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(57, 65); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(57, 66); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(57, 67); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(58, 64); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(58, 65); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(58, 66); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(58, 67); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(57, 68); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(57, 69); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(57, 70); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(57, 71); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(58, 68); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(58, 69); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(58, 70); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(58, 71); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(57, 72); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(57, 73); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(57, 74); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(57, 75); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(58, 72); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(58, 73); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(58, 74); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(58, 75); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(57, 76); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(57, 77); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(57, 78); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(57, 79); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(57, 80); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(57, 81); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(57, 82); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(57, 83); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(57, 84); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(57, 85); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(57, 86); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(57, 87); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(58, 76); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(58, 77); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(58, 78); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(58, 79); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(58, 80); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(58, 81); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(58, 82); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(58, 83); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(58, 84); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(58, 85); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(58, 86); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(58, 87); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(57, 88); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(57, 89); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(57, 90); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(58, 88); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(58, 89); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(58, 90); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(57, 91); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(57, 92); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(57, 93); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(57, 94); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(57, 95); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(58, 91); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(58, 92); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(58, 93); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(58, 94); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(58, 95); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(57, 96); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(57, 97); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(57, 98); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(57, 99); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(57, 100); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(57, 101); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(57, 102); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(57, 103); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(57, 104); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(57, 105); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(57, 106); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(57, 107); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(57, 108); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(57, 109); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(57, 110); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(57, 111); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(57, 112); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(57, 113); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(58, 96); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(58, 97); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(58, 98); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(58, 99); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(58, 100); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(58, 101); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(58, 102); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(58, 103); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(58, 104); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(58, 105); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(58, 106); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(58, 107); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(58, 108); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(58, 109); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(58, 110); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(58, 111); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(58, 112); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(58, 113); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(57, 114); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(57, 115); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(58, 114); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(58, 115); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(57, 116); + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(57, 117); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(58, 116); + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(58, 117); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(59, 76); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(59, 77); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(59, 78); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(59, 79); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(59, 80); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(59, 81); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(59, 82); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(59, 83); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(59, 84); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(59, 85); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(59, 86); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(59, 87); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(59, 88); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(59, 89); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(59, 90); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(59, 91); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(59, 92); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(59, 93); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(59, 94); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(59, 95); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(59, 96); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(59, 97); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(59, 98); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(59, 99); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(59, 100); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(59, 101); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(59, 102); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(59, 103); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(59, 104); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(59, 105); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(59, 106); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(59, 107); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(59, 108); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(59, 109); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(59, 110); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(59, 111); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(59, 112); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(59, 113); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(59, 114); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(59, 115); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(59, 116); + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(59, 117); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(60, 76); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(60, 77); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(60, 78); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(60, 79); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(60, 80); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(60, 81); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(60, 82); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(60, 83); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(60, 84); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(60, 85); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(60, 86); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(60, 87); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(61, 76); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(61, 77); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(61, 78); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(61, 79); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(61, 80); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(61, 81); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(61, 82); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(61, 83); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(61, 84); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(61, 85); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(61, 86); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(61, 87); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(62, 76); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(62, 77); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(62, 78); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(62, 79); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(62, 80); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(62, 81); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(62, 82); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(62, 83); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(62, 84); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(62, 85); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(62, 86); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(62, 87); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(63, 76); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(63, 77); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(63, 78); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(63, 79); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(63, 80); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(63, 81); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(63, 82); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(63, 83); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(63, 84); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(63, 85); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(63, 86); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(63, 87); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(60, 88); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(60, 89); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(60, 90); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(61, 88); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(61, 89); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(61, 90); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(62, 88); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(62, 89); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(62, 90); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[352], y[353], y[354], y[355])) + { + output.second.emplace_back(63, 88); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[356], y[357], y[358], y[359])) + { + output.second.emplace_back(63, 89); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[360], y[361], y[362], y[363])) + { + output.second.emplace_back(63, 90); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(60, 91); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(60, 92); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(60, 93); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(60, 94); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(60, 95); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(61, 91); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(61, 92); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(61, 93); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(61, 94); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(61, 95); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(62, 91); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(62, 92); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(62, 93); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(62, 94); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(62, 95); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(63, 91); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(63, 92); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(63, 93); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(63, 94); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(63, 95); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(60, 96); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(60, 97); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(60, 98); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(60, 99); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(60, 100); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(60, 101); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(60, 102); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(60, 103); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(60, 104); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(60, 105); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(60, 106); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(60, 107); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(60, 108); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(60, 109); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(60, 110); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(60, 111); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(60, 112); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(60, 113); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(61, 96); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(61, 97); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(61, 98); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(61, 99); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(61, 100); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(61, 101); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(61, 102); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(61, 103); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(61, 104); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(61, 105); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(61, 106); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(61, 107); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(61, 108); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(61, 109); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(61, 110); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(61, 111); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(61, 112); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(61, 113); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(62, 96); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(62, 97); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(62, 98); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(62, 99); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(62, 100); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(62, 101); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(62, 102); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(62, 103); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(62, 104); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(62, 105); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(62, 106); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(62, 107); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(62, 108); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(62, 109); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(62, 110); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(62, 111); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(62, 112); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(62, 113); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(63, 96); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(63, 97); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(63, 98); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(63, 99); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(63, 100); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(63, 101); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(63, 102); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(63, 103); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(63, 104); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(63, 105); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(63, 106); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(63, 107); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(63, 108); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(63, 109); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(63, 110); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(63, 111); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(63, 112); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(63, 113); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(60, 114); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(60, 115); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(61, 114); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(61, 115); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(62, 114); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(62, 115); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(63, 114); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(63, 115); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(60, 116); + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(60, 117); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(61, 116); + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(61, 117); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(62, 116); + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(62, 117); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(63, 116); + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(63, 117); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(64, 76); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(64, 77); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(64, 78); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(64, 79); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(64, 80); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(64, 81); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(64, 82); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(64, 83); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(64, 84); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(64, 85); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(64, 86); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(64, 87); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(65, 76); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(65, 77); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(65, 78); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(65, 79); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(65, 80); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(65, 81); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(65, 82); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(65, 83); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(65, 84); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(65, 85); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(65, 86); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(65, 87); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(66, 76); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(66, 77); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(66, 78); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(66, 79); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(66, 80); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(66, 81); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(66, 82); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(66, 83); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(66, 84); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(66, 85); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(66, 86); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(66, 87); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(67, 76); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(67, 77); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(67, 78); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[316], y[317], y[318], y[319])) + { + output.second.emplace_back(67, 79); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[320], y[321], y[322], y[323])) + { + output.second.emplace_back(67, 80); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[324], y[325], y[326], y[327])) + { + output.second.emplace_back(67, 81); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[328], y[329], y[330], y[331])) + { + output.second.emplace_back(67, 82); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[332], y[333], y[334], y[335])) + { + output.second.emplace_back(67, 83); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[336], y[337], y[338], y[339])) + { + output.second.emplace_back(67, 84); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[340], y[341], y[342], y[343])) + { + output.second.emplace_back(67, 85); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[344], y[345], y[346], y[347])) + { + output.second.emplace_back(67, 86); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[348], y[349], y[350], y[351])) + { + output.second.emplace_back(67, 87); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(64, 91); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(64, 92); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(64, 93); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(64, 94); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(64, 95); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(65, 91); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(65, 92); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(65, 93); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(65, 94); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(65, 95); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(66, 91); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(66, 92); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(66, 93); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(66, 94); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(66, 95); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(67, 91); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(67, 92); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(67, 93); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(67, 94); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(67, 95); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(64, 96); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(64, 97); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(64, 98); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(64, 99); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(64, 100); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(64, 101); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(64, 102); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(64, 103); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(64, 104); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(64, 105); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(64, 106); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(64, 107); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(64, 108); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(64, 109); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(64, 110); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(64, 111); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(64, 112); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(64, 113); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(65, 96); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(65, 97); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(65, 98); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(65, 99); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(65, 100); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(65, 101); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(65, 102); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(65, 103); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(65, 104); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(65, 105); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(65, 106); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(65, 107); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(65, 108); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(65, 109); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(65, 110); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(65, 111); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(65, 112); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(65, 113); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(66, 96); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(66, 97); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(66, 98); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(66, 99); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(66, 100); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(66, 101); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(66, 102); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(66, 103); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(66, 104); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(66, 105); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(66, 106); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(66, 107); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(66, 108); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(66, 109); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(66, 110); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(66, 111); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(66, 112); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(66, 113); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(67, 96); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(67, 97); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(67, 98); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(67, 99); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(67, 100); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(67, 101); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(67, 102); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(67, 103); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(67, 104); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(67, 105); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(67, 106); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(67, 107); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(67, 108); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(67, 109); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(67, 110); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(67, 111); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(67, 112); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(67, 113); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(64, 114); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(64, 115); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(65, 114); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(65, 115); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(66, 114); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(66, 115); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(67, 114); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(67, 115); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(64, 116); + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(64, 117); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(65, 116); + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(65, 117); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(66, 116); + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(66, 117); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(67, 116); + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(67, 117); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(76, 91); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(76, 92); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(76, 93); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(76, 94); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(76, 95); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(77, 91); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(77, 92); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(77, 93); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(77, 94); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(77, 95); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(78, 91); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(78, 92); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(78, 93); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(78, 94); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(78, 95); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(79, 91); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(79, 92); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(79, 93); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(79, 94); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(79, 95); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(80, 91); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(80, 92); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(80, 93); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(80, 94); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(80, 95); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(81, 91); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(81, 92); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(81, 93); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(81, 94); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(81, 95); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(82, 91); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(82, 92); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(82, 93); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(82, 94); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(82, 95); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(83, 91); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(83, 92); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(83, 93); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(83, 94); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(83, 95); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(84, 91); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(84, 92); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(84, 93); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(84, 94); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(84, 95); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(85, 91); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(85, 92); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(85, 93); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(85, 94); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(85, 95); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(86, 91); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(86, 92); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(86, 93); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(86, 94); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(86, 95); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[364], y[365], y[366], y[367])) + { + output.second.emplace_back(87, 91); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[368], y[369], y[370], y[371])) + { + output.second.emplace_back(87, 92); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[372], y[373], y[374], y[375])) + { + output.second.emplace_back(87, 93); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[376], y[377], y[378], y[379])) + { + output.second.emplace_back(87, 94); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[380], y[381], y[382], y[383])) + { + output.second.emplace_back(87, 95); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(76, 96); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(76, 97); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(76, 98); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(76, 99); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(76, 100); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(76, 101); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(76, 102); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(76, 103); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(76, 104); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(76, 105); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(76, 106); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(76, 107); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(76, 108); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(76, 109); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(76, 110); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(76, 111); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(76, 112); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(76, 113); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(77, 96); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(77, 97); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(77, 98); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(77, 99); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(77, 100); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(77, 101); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(77, 102); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(77, 103); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(77, 104); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(77, 105); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(77, 106); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(77, 107); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(77, 108); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(77, 109); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(77, 110); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(77, 111); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(77, 112); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(77, 113); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(78, 96); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(78, 97); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(78, 98); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(78, 99); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(78, 100); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(78, 101); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(78, 102); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(78, 103); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(78, 104); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(78, 105); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(78, 106); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(78, 107); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(78, 108); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(78, 109); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(78, 110); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(78, 111); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(78, 112); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(78, 113); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(79, 96); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(79, 97); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(79, 98); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(79, 99); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(79, 100); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(79, 101); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(79, 102); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(79, 103); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(79, 104); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(79, 105); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(79, 106); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(79, 107); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(79, 108); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(79, 109); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(79, 110); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(79, 111); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(79, 112); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(79, 113); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(80, 96); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(80, 97); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(80, 98); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(80, 99); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(80, 100); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(80, 101); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(80, 102); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(80, 103); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(80, 104); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(80, 105); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(80, 106); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(80, 107); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(80, 108); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(80, 109); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(80, 110); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(80, 111); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(80, 112); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(80, 113); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(81, 96); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(81, 97); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(81, 98); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(81, 99); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(81, 100); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(81, 101); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(81, 102); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(81, 103); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(81, 104); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(81, 105); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(81, 106); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(81, 107); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(81, 108); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(81, 109); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(81, 110); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(81, 111); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(81, 112); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(81, 113); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(82, 96); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(82, 97); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(82, 98); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(82, 99); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(82, 100); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(82, 101); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(82, 102); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(82, 103); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(82, 104); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(82, 105); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(82, 106); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(82, 107); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(82, 108); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(82, 109); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(82, 110); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(82, 111); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(82, 112); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(82, 113); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(83, 96); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(83, 97); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(83, 98); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(83, 99); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(83, 100); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(83, 101); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(83, 102); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(83, 103); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(83, 104); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(83, 105); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(83, 106); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(83, 107); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(83, 108); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(83, 109); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(83, 110); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(83, 111); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(83, 112); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(83, 113); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(84, 96); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(84, 97); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(84, 98); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(84, 99); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(84, 100); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(84, 101); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(84, 102); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(84, 103); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(84, 104); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(84, 105); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(84, 106); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(84, 107); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(84, 108); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(84, 109); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(84, 110); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(84, 111); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(84, 112); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(84, 113); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(85, 96); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(85, 97); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(85, 98); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(85, 99); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(85, 100); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(85, 101); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(85, 102); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(85, 103); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(85, 104); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(85, 105); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(85, 106); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(85, 107); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(85, 108); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(85, 109); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(85, 110); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(85, 111); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(85, 112); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(85, 113); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(86, 96); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(86, 97); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(86, 98); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(86, 99); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(86, 100); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(86, 101); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(86, 102); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(86, 103); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(86, 104); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(86, 105); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(86, 106); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(86, 107); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(86, 108); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(86, 109); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(86, 110); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(86, 111); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(86, 112); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(86, 113); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[384], y[385], y[386], y[387])) + { + output.second.emplace_back(87, 96); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[388], y[389], y[390], y[391])) + { + output.second.emplace_back(87, 97); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[392], y[393], y[394], y[395])) + { + output.second.emplace_back(87, 98); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[396], y[397], y[398], y[399])) + { + output.second.emplace_back(87, 99); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[400], y[401], y[402], y[403])) + { + output.second.emplace_back(87, 100); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[404], y[405], y[406], y[407])) + { + output.second.emplace_back(87, 101); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[408], y[409], y[410], y[411])) + { + output.second.emplace_back(87, 102); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[412], y[413], y[414], y[415])) + { + output.second.emplace_back(87, 103); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[416], y[417], y[418], y[419])) + { + output.second.emplace_back(87, 104); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[420], y[421], y[422], y[423])) + { + output.second.emplace_back(87, 105); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[424], y[425], y[426], y[427])) + { + output.second.emplace_back(87, 106); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[428], y[429], y[430], y[431])) + { + output.second.emplace_back(87, 107); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[432], y[433], y[434], y[435])) + { + output.second.emplace_back(87, 108); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[436], y[437], y[438], y[439])) + { + output.second.emplace_back(87, 109); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[440], y[441], y[442], y[443])) + { + output.second.emplace_back(87, 110); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[444], y[445], y[446], y[447])) + { + output.second.emplace_back(87, 111); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[448], y[449], y[450], y[451])) + { + output.second.emplace_back(87, 112); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[452], y[453], y[454], y[455])) + { + output.second.emplace_back(87, 113); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(76, 114); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(76, 115); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(77, 114); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(77, 115); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(78, 114); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(78, 115); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(79, 114); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(79, 115); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(80, 114); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(80, 115); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(81, 114); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(81, 115); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(82, 114); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(82, 115); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(83, 114); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(83, 115); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(84, 114); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(84, 115); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(85, 114); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(85, 115); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(86, 114); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(86, 115); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[456], y[457], y[458], y[459])) + { + output.second.emplace_back(87, 114); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[460], y[461], y[462], y[463])) + { + output.second.emplace_back(87, 115); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(76, 116); + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(76, 117); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(77, 116); + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(77, 117); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(78, 116); + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(78, 117); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(79, 116); + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(79, 117); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(80, 116); + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(80, 117); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(81, 116); + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(81, 117); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(82, 116); + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(82, 117); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(83, 116); + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(83, 117); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(84, 116); + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(84, 117); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(85, 116); + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(85, 117); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(86, 116); + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(86, 117); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[464], y[465], y[466], y[467])) + { + output.second.emplace_back(87, 116); + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[468], y[469], y[470], y[471])) + { + output.second.emplace_back(87, 117); + } + + return output; + } + + template + inline static bool fkcc( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept + { + std::array, 110> v; + std::array, 560> y; + + v[0] = sin(x[0]); + v[1] = -v[0]; + y[4] = -0.08 * v[1]; + v[2] = cos(x[0]); + y[5] = -0.2875 + -0.08 * v[2]; + y[8] = -0.03 * v[1]; + y[9] = -0.2875 + -0.03 * v[2]; + y[20] = 0.03 * v[1]; + y[21] = -0.2875 + 0.03 * v[2]; + y[24] = 0.08 * v[1]; + y[25] = -0.2875 + 0.08 * v[2]; + v[3] = sin(x[1]); + v[4] = -v[3]; + v[5] = cos(x[1]); + v[6] = 4.89663865010925e-12 * v[5]; + v[7] = v[2] * v[4] + v[1] * v[6]; + y[28] = -0.12 * v[7]; + v[6] = v[0] * v[4] + v[2] * v[6]; + y[29] = -0.2875 + -0.12 * v[6]; + v[4] = -1. * v[5]; + y[30] = 0.333 + -0.12 * v[4]; + y[32] = -0.17 * v[7]; + y[33] = -0.2875 + -0.17 * v[6]; + y[34] = 0.333 + -0.17 * v[4]; + v[8] = -1. * v[7] + 4.89663865010925e-12 * v[1]; + v[9] = -0.316 * v[7]; + y[36] = -0.1 * v[8] + v[9]; + v[10] = -1. * v[6] + 4.89663865010925e-12 * v[2]; + v[11] = -0.2875 + -0.316 * v[6]; + y[37] = -0.1 * v[10] + v[11]; + v[12] = 2.39770700697438e-23 + -1. * v[4]; + v[13] = 0.333 + -0.316 * v[4]; + y[38] = -0.1 * v[12] + v[13]; + y[40] = -0.06 * v[8] + v[9]; + y[41] = -0.06 * v[10] + v[11]; + y[42] = -0.06 * v[12] + v[13]; + v[14] = 4.89663865010925e-12 * v[3]; + v[15] = v[2] * v[5] + v[1] * v[14]; + v[16] = cos(x[2]); + v[17] = sin(x[2]); + v[18] = 4.89663865010925e-12 * v[17]; + v[19] = v[15] * v[16] + v[7] * v[18] + v[1] * v[17]; + v[20] = -v[17]; + v[21] = 4.89663865010925e-12 * v[16]; + v[15] = v[15] * v[20] + v[7] * v[21] + v[1] * v[16]; + y[44] = 0.08 * v[19] + 0.06 * v[15] + v[9]; + v[14] = v[0] * v[5] + v[2] * v[14]; + v[5] = v[14] * v[16] + v[6] * v[18] + v[2] * v[17]; + v[14] = v[14] * v[20] + v[6] * v[21] + v[2] * v[16]; + y[45] = 0.08 * v[5] + 0.06 * v[14] + v[11]; + v[3] = -1. * v[3]; + v[18] = v[3] * v[16] + v[4] * v[18] + 4.89663865010925e-12 * v[17]; + v[3] = v[3] * v[20] + v[4] * v[21] + 4.89663865010925e-12 * v[16]; + y[46] = 0.08 * v[18] + 0.06 * v[3] + v[13]; + y[48] = 0.08 * v[19] + 0.02 * v[15] + v[9]; + y[49] = 0.08 * v[5] + 0.02 * v[14] + v[11]; + y[50] = 0.08 * v[18] + 0.02 * v[3] + v[13]; + v[21] = cos(x[3]); + v[20] = sin(x[3]); + v[16] = 4.89663865010925e-12 * v[20]; + v[17] = v[19] * v[21] + v[15] * v[16] + v[8] * v[20]; + v[0] = -v[20]; + v[22] = 4.89663865010925e-12 * v[21]; + v[23] = v[19] * v[0] + v[15] * v[22] + v[8] * v[21]; + v[24] = v[9] + 0.0825 * v[19]; + y[52] = -0.08 * v[17] + 0.095 * v[23] + v[24]; + v[25] = v[5] * v[21] + v[14] * v[16] + v[10] * v[20]; + v[26] = v[5] * v[0] + v[14] * v[22] + v[10] * v[21]; + v[27] = v[11] + 0.0825 * v[5]; + y[53] = -0.08 * v[25] + 0.095 * v[26] + v[27]; + v[16] = v[18] * v[21] + v[3] * v[16] + v[12] * v[20]; + v[22] = v[18] * v[0] + v[3] * v[22] + v[12] * v[21]; + v[0] = v[13] + 0.0825 * v[18]; + y[54] = -0.08 * v[16] + 0.095 * v[22] + v[0]; + v[21] = -1. * v[15] + 4.89663865010925e-12 * v[8]; + y[56] = 0.02 * v[21] + v[24]; + v[20] = -1. * v[14] + 4.89663865010925e-12 * v[10]; + y[57] = 0.02 * v[20] + v[27]; + v[28] = -1. * v[3] + 4.89663865010925e-12 * v[12]; + y[58] = 0.02 * v[28] + v[0]; + y[60] = 0.06 * v[21] + v[24]; + y[61] = 0.06 * v[20] + v[27]; + y[62] = 0.06 * v[28] + v[0]; + y[64] = -0.08 * v[17] + 0.06 * v[23] + v[24]; + y[65] = -0.08 * v[25] + 0.06 * v[26] + v[27]; + y[66] = -0.08 * v[16] + 0.06 * v[22] + v[0]; + v[29] = sin(x[4]); + v[30] = -v[29]; + v[31] = cos(x[4]); + v[32] = 4.89663865010925e-12 * v[31]; + v[33] = -1. * v[31]; + v[34] = v[17] * v[30] + v[23] * v[32] + v[21] * v[33]; + y[116] = v[24] + -0.0825 * v[17] + 0.384 * v[23]; + y[68] = 0.055 * v[34] + y[116]; + v[35] = v[25] * v[30] + v[26] * v[32] + v[20] * v[33]; + y[117] = v[27] + -0.0825 * v[25] + 0.384 * v[26]; + y[69] = 0.055 * v[35] + y[117]; + v[33] = v[16] * v[30] + v[22] * v[32] + v[28] * v[33]; + y[118] = v[0] + -0.0825 * v[16] + 0.384 * v[22]; + y[70] = 0.055 * v[33] + y[118]; + y[72] = 0.075 * v[34] + y[116]; + y[73] = 0.075 * v[35] + y[117]; + y[74] = 0.075 * v[33] + y[118]; + v[32] = v[23] + 4.89663865010925e-12 * v[21]; + y[76] = -0.22 * v[32] + y[116]; + v[30] = v[26] + 4.89663865010925e-12 * v[20]; + y[77] = -0.22 * v[30] + y[117]; + v[36] = v[22] + 4.89663865010925e-12 * v[28]; + y[78] = -0.22 * v[36] + y[118]; + y[80] = 0.05 * v[34] + -0.18 * v[32] + y[116]; + y[81] = 0.05 * v[35] + -0.18 * v[30] + y[117]; + y[82] = 0.05 * v[33] + -0.18 * v[36] + y[118]; + v[37] = 4.89663865010925e-12 * v[29]; + v[29] = -1. * v[29]; + v[38] = v[17] * v[31] + v[23] * v[37] + v[21] * v[29]; + y[84] = 0.01 * v[38] + 0.08 * v[34] + -0.14 * v[32] + y[116]; + v[39] = v[25] * v[31] + v[26] * v[37] + v[20] * v[29]; + y[85] = 0.01 * v[39] + 0.08 * v[35] + -0.14 * v[30] + y[117]; + v[29] = v[16] * v[31] + v[22] * v[37] + v[28] * v[29]; + y[86] = 0.01 * v[29] + 0.08 * v[33] + -0.14 * v[36] + y[118]; + y[88] = 0.01 * v[38] + 0.085 * v[34] + -0.11 * v[32] + y[116]; + y[89] = 0.01 * v[39] + 0.085 * v[35] + -0.11 * v[30] + y[117]; + y[90] = 0.01 * v[29] + 0.085 * v[33] + -0.11 * v[36] + y[118]; + y[92] = 0.01 * v[38] + 0.09 * v[34] + -0.08 * v[32] + y[116]; + y[93] = 0.01 * v[39] + 0.09 * v[35] + -0.08 * v[30] + y[117]; + y[94] = 0.01 * v[29] + 0.09 * v[33] + -0.08 * v[36] + y[118]; + y[96] = 0.01 * v[38] + 0.095 * v[34] + -0.05 * v[32] + y[116]; + y[97] = 0.01 * v[39] + 0.095 * v[35] + -0.05 * v[30] + y[117]; + y[98] = 0.01 * v[29] + 0.095 * v[33] + -0.05 * v[36] + y[118]; + y[100] = -0.01 * v[38] + 0.08 * v[34] + -0.14 * v[32] + y[116]; + y[101] = -0.01 * v[39] + 0.08 * v[35] + -0.14 * v[30] + y[117]; + y[102] = -0.01 * v[29] + 0.08 * v[33] + -0.14 * v[36] + y[118]; + y[104] = -0.01 * v[38] + 0.085 * v[34] + -0.11 * v[32] + y[116]; + y[105] = -0.01 * v[39] + 0.085 * v[35] + -0.11 * v[30] + y[117]; + y[106] = -0.01 * v[29] + 0.085 * v[33] + -0.11 * v[36] + y[118]; + y[108] = -0.01 * v[38] + 0.09 * v[34] + -0.08 * v[32] + y[116]; + y[109] = -0.01 * v[39] + 0.09 * v[35] + -0.08 * v[30] + y[117]; + y[110] = -0.01 * v[29] + 0.09 * v[33] + -0.08 * v[36] + y[118]; + y[112] = -0.01 * v[38] + 0.095 * v[34] + -0.05 * v[32] + y[116]; + y[113] = -0.01 * v[39] + 0.095 * v[35] + -0.05 * v[30] + y[117]; + y[114] = -0.01 * v[29] + 0.095 * v[33] + -0.05 * v[36] + y[118]; + v[37] = cos(x[5]); + v[31] = sin(x[5]); + v[40] = 4.89663865010925e-12 * v[31]; + v[41] = v[38] * v[37] + v[34] * v[40] + v[32] * v[31]; + v[42] = -v[31]; + v[43] = 4.89663865010925e-12 * v[37]; + v[38] = v[38] * v[42] + v[34] * v[43] + v[32] * v[37]; + y[120] = 0.08 * v[41] + -0.01 * v[38] + y[116]; + v[44] = v[39] * v[37] + v[35] * v[40] + v[30] * v[31]; + v[39] = v[39] * v[42] + v[35] * v[43] + v[30] * v[37]; + y[121] = 0.08 * v[44] + -0.01 * v[39] + y[117]; + v[40] = v[29] * v[37] + v[33] * v[40] + v[36] * v[31]; + v[43] = v[29] * v[42] + v[33] * v[43] + v[36] * v[37]; + y[122] = 0.08 * v[40] + -0.01 * v[43] + y[118]; + y[124] = 0.08 * v[41] + 0.035 * v[38] + y[116]; + y[125] = 0.08 * v[44] + 0.035 * v[39] + y[117]; + y[126] = 0.08 * v[40] + 0.035 * v[43] + y[118]; + v[42] = -1. * v[34] + 4.89663865010925e-12 * v[32]; + v[37] = -1. * v[38] + 4.89663865010925e-12 * v[42]; + v[29] = y[116] + 0.088 * v[41]; + y[128] = 0.07 * v[37] + v[29]; + v[31] = -1. * v[35] + 4.89663865010925e-12 * v[30]; + v[45] = -1. * v[39] + 4.89663865010925e-12 * v[31]; + v[46] = y[117] + 0.088 * v[44]; + y[129] = 0.07 * v[45] + v[46]; + v[47] = -1. * v[33] + 4.89663865010925e-12 * v[36]; + v[48] = -1. * v[43] + 4.89663865010925e-12 * v[47]; + v[49] = y[118] + 0.088 * v[40]; + y[130] = 0.07 * v[48] + v[49]; + v[50] = cos(x[6]); + v[51] = sin(x[6]); + v[52] = 4.89663865010925e-12 * v[51]; + v[53] = v[41] * v[50] + v[38] * v[52] + v[42] * v[51]; + v[54] = -v[51]; + v[55] = 4.89663865010925e-12 * v[50]; + v[42] = v[41] * v[54] + v[38] * v[55] + v[42] * v[50]; + y[132] = 0.02 * v[53] + 0.04 * v[42] + 0.08 * v[37] + v[29]; + v[56] = v[44] * v[50] + v[39] * v[52] + v[31] * v[51]; + v[31] = v[44] * v[54] + v[39] * v[55] + v[31] * v[50]; + y[133] = 0.02 * v[56] + 0.04 * v[31] + 0.08 * v[45] + v[46]; + v[52] = v[40] * v[50] + v[43] * v[52] + v[47] * v[51]; + v[55] = v[40] * v[54] + v[43] * v[55] + v[47] * v[50]; + y[134] = 0.02 * v[52] + 0.04 * v[55] + 0.08 * v[48] + v[49]; + y[136] = 0.04 * v[53] + 0.02 * v[42] + 0.08 * v[37] + v[29]; + y[137] = 0.04 * v[56] + 0.02 * v[31] + 0.08 * v[45] + v[46]; + y[138] = 0.04 * v[52] + 0.02 * v[55] + 0.08 * v[48] + v[49]; + y[140] = 0.04 * v[53] + 0.06 * v[42] + 0.085 * v[37] + v[29]; + y[141] = 0.04 * v[56] + 0.06 * v[31] + 0.085 * v[45] + v[46]; + y[142] = 0.04 * v[52] + 0.06 * v[55] + 0.085 * v[48] + v[49]; + y[144] = 0.06 * v[53] + 0.04 * v[42] + 0.085 * v[37] + v[29]; + y[145] = 0.06 * v[56] + 0.04 * v[31] + 0.085 * v[45] + v[46]; + y[146] = 0.06 * v[52] + 0.04 * v[55] + 0.085 * v[48] + v[49]; + y[148] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[42] + 0.117 * v[37] + v[29]; + y[149] = -0.0530330085889673 * v[56] + -0.0530330085890148 * v[31] + 0.117 * v[45] + v[46]; + y[150] = -0.0530330085889673 * v[52] + -0.0530330085890148 * v[55] + 0.117 * v[48] + v[49]; + y[152] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[42] + 0.117 * v[37] + v[29]; + y[153] = -0.0318198051533804 * v[56] + -0.0318198051534089 * v[31] + 0.117 * v[45] + v[46]; + y[154] = -0.0318198051533804 * v[52] + -0.0318198051534089 * v[55] + 0.117 * v[48] + v[49]; + y[156] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[42] + 0.117 * v[37] + v[29]; + y[157] = -0.0106066017177935 * v[56] + -0.010606601717803 * v[31] + 0.117 * v[45] + v[46]; + y[158] = -0.0106066017177935 * v[52] + -0.010606601717803 * v[55] + 0.117 * v[48] + v[49]; + y[160] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[42] + 0.117 * v[37] + v[29]; + y[161] = 0.0106066017177935 * v[56] + 0.010606601717803 * v[31] + 0.117 * v[45] + v[46]; + y[162] = 0.0106066017177935 * v[52] + 0.010606601717803 * v[55] + 0.117 * v[48] + v[49]; + y[164] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[42] + 0.117 * v[37] + v[29]; + y[165] = 0.0318198051533804 * v[56] + 0.0318198051534089 * v[31] + 0.117 * v[45] + v[46]; + y[166] = 0.0318198051533804 * v[52] + 0.0318198051534089 * v[55] + 0.117 * v[48] + v[49]; + y[168] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[42] + 0.117 * v[37] + v[29]; + y[169] = 0.0530330085889673 * v[56] + 0.0530330085890148 * v[31] + 0.117 * v[45] + v[46]; + y[170] = 0.0530330085889673 * v[52] + 0.0530330085890148 * v[55] + 0.117 * v[48] + v[49]; + y[172] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[42] + 0.137 * v[37] + v[29]; + y[173] = -0.0530330085889673 * v[56] + -0.0530330085890148 * v[31] + 0.137 * v[45] + v[46]; + y[174] = -0.0530330085889673 * v[52] + -0.0530330085890148 * v[55] + 0.137 * v[48] + v[49]; + y[176] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[42] + 0.137 * v[37] + v[29]; + y[177] = -0.0318198051533804 * v[56] + -0.0318198051534089 * v[31] + 0.137 * v[45] + v[46]; + y[178] = -0.0318198051533804 * v[52] + -0.0318198051534089 * v[55] + 0.137 * v[48] + v[49]; + y[180] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[42] + 0.137 * v[37] + v[29]; + y[181] = -0.0106066017177935 * v[56] + -0.010606601717803 * v[31] + 0.137 * v[45] + v[46]; + y[182] = -0.0106066017177935 * v[52] + -0.010606601717803 * v[55] + 0.137 * v[48] + v[49]; + y[184] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[42] + 0.137 * v[37] + v[29]; + y[185] = 0.0106066017177935 * v[56] + 0.010606601717803 * v[31] + 0.137 * v[45] + v[46]; + y[186] = 0.0106066017177935 * v[52] + 0.010606601717803 * v[55] + 0.137 * v[48] + v[49]; + y[188] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[42] + 0.137 * v[37] + v[29]; + y[189] = 0.0318198051533804 * v[56] + 0.0318198051534089 * v[31] + 0.137 * v[45] + v[46]; + y[190] = 0.0318198051533804 * v[52] + 0.0318198051534089 * v[55] + 0.137 * v[48] + v[49]; + y[192] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[42] + 0.137 * v[37] + v[29]; + y[193] = 0.0530330085889673 * v[56] + 0.0530330085890148 * v[31] + 0.137 * v[45] + v[46]; + y[194] = 0.0530330085889673 * v[52] + 0.0530330085890148 * v[55] + 0.137 * v[48] + v[49]; + y[196] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[42] + 0.157 * v[37] + v[29]; + y[197] = -0.0530330085889673 * v[56] + -0.0530330085890148 * v[31] + 0.157 * v[45] + v[46]; + y[198] = -0.0530330085889673 * v[52] + -0.0530330085890148 * v[55] + 0.157 * v[48] + v[49]; + y[200] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[42] + 0.157 * v[37] + v[29]; + y[201] = -0.0318198051533804 * v[56] + -0.0318198051534089 * v[31] + 0.157 * v[45] + v[46]; + y[202] = -0.0318198051533804 * v[52] + -0.0318198051534089 * v[55] + 0.157 * v[48] + v[49]; + y[204] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[42] + 0.157 * v[37] + v[29]; + y[205] = -0.0106066017177935 * v[56] + -0.010606601717803 * v[31] + 0.157 * v[45] + v[46]; + y[206] = -0.0106066017177935 * v[52] + -0.010606601717803 * v[55] + 0.157 * v[48] + v[49]; + y[208] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[42] + 0.157 * v[37] + v[29]; + y[209] = 0.0106066017177935 * v[56] + 0.010606601717803 * v[31] + 0.157 * v[45] + v[46]; + y[210] = 0.0106066017177935 * v[52] + 0.010606601717803 * v[55] + 0.157 * v[48] + v[49]; + y[212] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[42] + 0.157 * v[37] + v[29]; + y[213] = 0.0318198051533804 * v[56] + 0.0318198051534089 * v[31] + 0.157 * v[45] + v[46]; + y[214] = 0.0318198051533804 * v[52] + 0.0318198051534089 * v[55] + 0.157 * v[48] + v[49]; + y[216] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[42] + 0.157 * v[37] + v[29]; + y[217] = 0.0530330085889673 * v[56] + 0.0530330085890148 * v[31] + 0.157 * v[45] + v[46]; + y[218] = 0.0530330085889673 * v[52] + 0.0530330085890148 * v[55] + 0.157 * v[48] + v[49]; + y[220] = 0.0565685424948984 * v[53] + 0.0565685424949492 * v[42] + 0.1874 * v[37] + v[29]; + y[221] = 0.0565685424948984 * v[56] + 0.0565685424949492 * v[31] + 0.1874 * v[45] + v[46]; + y[222] = 0.0565685424948984 * v[52] + 0.0565685424949492 * v[55] + 0.1874 * v[48] + v[49]; + y[224] = 0.0516187950265948 * v[53] + 0.0516187950266411 * v[42] + 0.2094 * v[37] + v[29]; + y[225] = 0.0516187950265948 * v[56] + 0.0516187950266411 * v[31] + 0.2094 * v[45] + v[46]; + y[226] = 0.0516187950265948 * v[52] + 0.0516187950266411 * v[55] + 0.2094 * v[48] + v[49]; + y[228] = -0.0565685424948984 * v[53] + -0.0565685424949492 * v[42] + 0.1874 * v[37] + v[29]; + y[229] = -0.0565685424948984 * v[56] + -0.0565685424949492 * v[31] + 0.1874 * v[45] + v[46]; + y[230] = -0.0565685424948984 * v[52] + -0.0565685424949492 * v[55] + 0.1874 * v[48] + v[49]; + y[232] = -0.0516187950265948 * v[53] + -0.0516187950266411 * v[42] + 0.2094 * v[37] + v[29]; + y[233] = -0.0516187950265948 * v[56] + -0.0516187950266411 * v[31] + 0.2094 * v[45] + v[46]; + y[234] = -0.0516187950265948 * v[52] + -0.0516187950266411 * v[55] + 0.2094 * v[48] + v[49]; + v[54] = sin(x[7]); + v[50] = -v[54]; + y[240] = -0.08 * v[50]; + v[47] = cos(x[7]); + y[241] = 0.2875 + -0.08 * v[47]; + y[244] = -0.03 * v[50]; + y[245] = 0.2875 + -0.03 * v[47]; + y[256] = 0.03 * v[50]; + y[257] = 0.2875 + 0.03 * v[47]; + y[260] = 0.08 * v[50]; + y[261] = 0.2875 + 0.08 * v[47]; + v[51] = sin(x[8]); + v[57] = -v[51]; + v[58] = cos(x[8]); + v[59] = 4.89663865010925e-12 * v[58]; + v[60] = v[47] * v[57] + v[50] * v[59]; + y[264] = -0.12 * v[60]; + v[59] = v[54] * v[57] + v[47] * v[59]; + y[265] = 0.2875 + -0.12 * v[59]; + v[57] = -1. * v[58]; + y[266] = 0.333 + -0.12 * v[57]; + y[268] = -0.17 * v[60]; + y[269] = 0.2875 + -0.17 * v[59]; + y[270] = 0.333 + -0.17 * v[57]; + v[61] = -1. * v[60] + 4.89663865010925e-12 * v[50]; + v[62] = -0.316 * v[60]; + y[272] = -0.1 * v[61] + v[62]; + v[63] = -1. * v[59] + 4.89663865010925e-12 * v[47]; + v[64] = 0.2875 + -0.316 * v[59]; + y[273] = -0.1 * v[63] + v[64]; + v[65] = 2.39770700697438e-23 + -1. * v[57]; + v[66] = 0.333 + -0.316 * v[57]; + y[274] = -0.1 * v[65] + v[66]; + y[276] = -0.06 * v[61] + v[62]; + y[277] = -0.06 * v[63] + v[64]; + y[278] = -0.06 * v[65] + v[66]; + v[67] = 4.89663865010925e-12 * v[51]; + v[68] = v[47] * v[58] + v[50] * v[67]; + v[69] = cos(x[9]); + v[70] = sin(x[9]); + v[71] = 4.89663865010925e-12 * v[70]; + v[72] = v[68] * v[69] + v[60] * v[71] + v[50] * v[70]; + v[73] = -v[70]; + v[74] = 4.89663865010925e-12 * v[69]; + v[68] = v[68] * v[73] + v[60] * v[74] + v[50] * v[69]; + y[280] = 0.08 * v[72] + 0.06 * v[68] + v[62]; + v[67] = v[54] * v[58] + v[47] * v[67]; + v[58] = v[67] * v[69] + v[59] * v[71] + v[47] * v[70]; + v[67] = v[67] * v[73] + v[59] * v[74] + v[47] * v[69]; + y[281] = 0.08 * v[58] + 0.06 * v[67] + v[64]; + v[51] = -1. * v[51]; + v[71] = v[51] * v[69] + v[57] * v[71] + 4.89663865010925e-12 * v[70]; + v[51] = v[51] * v[73] + v[57] * v[74] + 4.89663865010925e-12 * v[69]; + y[282] = 0.08 * v[71] + 0.06 * v[51] + v[66]; + y[284] = 0.08 * v[72] + 0.02 * v[68] + v[62]; + y[285] = 0.08 * v[58] + 0.02 * v[67] + v[64]; + y[286] = 0.08 * v[71] + 0.02 * v[51] + v[66]; + v[74] = cos(x[10]); + v[73] = sin(x[10]); + v[69] = 4.89663865010925e-12 * v[73]; + v[70] = v[72] * v[74] + v[68] * v[69] + v[61] * v[73]; + v[54] = -v[73]; + v[75] = 4.89663865010925e-12 * v[74]; + v[76] = v[72] * v[54] + v[68] * v[75] + v[61] * v[74]; + v[77] = v[62] + 0.0825 * v[72]; + y[288] = -0.08 * v[70] + 0.095 * v[76] + v[77]; + v[78] = v[58] * v[74] + v[67] * v[69] + v[63] * v[73]; + v[79] = v[58] * v[54] + v[67] * v[75] + v[63] * v[74]; + v[80] = v[64] + 0.0825 * v[58]; + y[289] = -0.08 * v[78] + 0.095 * v[79] + v[80]; + v[69] = v[71] * v[74] + v[51] * v[69] + v[65] * v[73]; + v[75] = v[71] * v[54] + v[51] * v[75] + v[65] * v[74]; + v[54] = v[66] + 0.0825 * v[71]; + y[290] = -0.08 * v[69] + 0.095 * v[75] + v[54]; + v[74] = -1. * v[68] + 4.89663865010925e-12 * v[61]; + y[292] = 0.02 * v[74] + v[77]; + v[73] = -1. * v[67] + 4.89663865010925e-12 * v[63]; + y[293] = 0.02 * v[73] + v[80]; + v[81] = -1. * v[51] + 4.89663865010925e-12 * v[65]; + y[294] = 0.02 * v[81] + v[54]; + y[296] = 0.06 * v[74] + v[77]; + y[297] = 0.06 * v[73] + v[80]; + y[298] = 0.06 * v[81] + v[54]; + y[300] = -0.08 * v[70] + 0.06 * v[76] + v[77]; + y[301] = -0.08 * v[78] + 0.06 * v[79] + v[80]; + y[302] = -0.08 * v[69] + 0.06 * v[75] + v[54]; + v[82] = sin(x[11]); + v[83] = -v[82]; + v[84] = cos(x[11]); + v[85] = 4.89663865010925e-12 * v[84]; + v[86] = -1. * v[84]; + v[87] = v[70] * v[83] + v[76] * v[85] + v[74] * v[86]; + y[352] = v[77] + -0.0825 * v[70] + 0.384 * v[76]; + y[304] = 0.055 * v[87] + y[352]; + v[88] = v[78] * v[83] + v[79] * v[85] + v[73] * v[86]; + y[353] = v[80] + -0.0825 * v[78] + 0.384 * v[79]; + y[305] = 0.055 * v[88] + y[353]; + v[86] = v[69] * v[83] + v[75] * v[85] + v[81] * v[86]; + y[354] = v[54] + -0.0825 * v[69] + 0.384 * v[75]; + y[306] = 0.055 * v[86] + y[354]; + y[308] = 0.075 * v[87] + y[352]; + y[309] = 0.075 * v[88] + y[353]; + y[310] = 0.075 * v[86] + y[354]; + v[85] = v[76] + 4.89663865010925e-12 * v[74]; + y[312] = -0.22 * v[85] + y[352]; + v[83] = v[79] + 4.89663865010925e-12 * v[73]; + y[313] = -0.22 * v[83] + y[353]; + v[89] = v[75] + 4.89663865010925e-12 * v[81]; + y[314] = -0.22 * v[89] + y[354]; + y[316] = 0.05 * v[87] + -0.18 * v[85] + y[352]; + y[317] = 0.05 * v[88] + -0.18 * v[83] + y[353]; + y[318] = 0.05 * v[86] + -0.18 * v[89] + y[354]; + v[90] = 4.89663865010925e-12 * v[82]; + v[82] = -1. * v[82]; + v[91] = v[70] * v[84] + v[76] * v[90] + v[74] * v[82]; + y[320] = 0.01 * v[91] + 0.08 * v[87] + -0.14 * v[85] + y[352]; + v[92] = v[78] * v[84] + v[79] * v[90] + v[73] * v[82]; + y[321] = 0.01 * v[92] + 0.08 * v[88] + -0.14 * v[83] + y[353]; + v[82] = v[69] * v[84] + v[75] * v[90] + v[81] * v[82]; + y[322] = 0.01 * v[82] + 0.08 * v[86] + -0.14 * v[89] + y[354]; + y[324] = 0.01 * v[91] + 0.085 * v[87] + -0.11 * v[85] + y[352]; + y[325] = 0.01 * v[92] + 0.085 * v[88] + -0.11 * v[83] + y[353]; + y[326] = 0.01 * v[82] + 0.085 * v[86] + -0.11 * v[89] + y[354]; + y[328] = 0.01 * v[91] + 0.09 * v[87] + -0.08 * v[85] + y[352]; + y[329] = 0.01 * v[92] + 0.09 * v[88] + -0.08 * v[83] + y[353]; + y[330] = 0.01 * v[82] + 0.09 * v[86] + -0.08 * v[89] + y[354]; + y[332] = 0.01 * v[91] + 0.095 * v[87] + -0.05 * v[85] + y[352]; + y[333] = 0.01 * v[92] + 0.095 * v[88] + -0.05 * v[83] + y[353]; + y[334] = 0.01 * v[82] + 0.095 * v[86] + -0.05 * v[89] + y[354]; + y[336] = -0.01 * v[91] + 0.08 * v[87] + -0.14 * v[85] + y[352]; + y[337] = -0.01 * v[92] + 0.08 * v[88] + -0.14 * v[83] + y[353]; + y[338] = -0.01 * v[82] + 0.08 * v[86] + -0.14 * v[89] + y[354]; + y[340] = -0.01 * v[91] + 0.085 * v[87] + -0.11 * v[85] + y[352]; + y[341] = -0.01 * v[92] + 0.085 * v[88] + -0.11 * v[83] + y[353]; + y[342] = -0.01 * v[82] + 0.085 * v[86] + -0.11 * v[89] + y[354]; + y[344] = -0.01 * v[91] + 0.09 * v[87] + -0.08 * v[85] + y[352]; + y[345] = -0.01 * v[92] + 0.09 * v[88] + -0.08 * v[83] + y[353]; + y[346] = -0.01 * v[82] + 0.09 * v[86] + -0.08 * v[89] + y[354]; + y[348] = -0.01 * v[91] + 0.095 * v[87] + -0.05 * v[85] + y[352]; + y[349] = -0.01 * v[92] + 0.095 * v[88] + -0.05 * v[83] + y[353]; + y[350] = -0.01 * v[82] + 0.095 * v[86] + -0.05 * v[89] + y[354]; + v[90] = cos(x[12]); + v[84] = sin(x[12]); + v[93] = 4.89663865010925e-12 * v[84]; + v[94] = v[91] * v[90] + v[87] * v[93] + v[85] * v[84]; + v[95] = -v[84]; + v[96] = 4.89663865010925e-12 * v[90]; + v[91] = v[91] * v[95] + v[87] * v[96] + v[85] * v[90]; + y[356] = 0.08 * v[94] + -0.01 * v[91] + y[352]; + v[97] = v[92] * v[90] + v[88] * v[93] + v[83] * v[84]; + v[92] = v[92] * v[95] + v[88] * v[96] + v[83] * v[90]; + y[357] = 0.08 * v[97] + -0.01 * v[92] + y[353]; + v[93] = v[82] * v[90] + v[86] * v[93] + v[89] * v[84]; + v[96] = v[82] * v[95] + v[86] * v[96] + v[89] * v[90]; + y[358] = 0.08 * v[93] + -0.01 * v[96] + y[354]; + y[360] = 0.08 * v[94] + 0.035 * v[91] + y[352]; + y[361] = 0.08 * v[97] + 0.035 * v[92] + y[353]; + y[362] = 0.08 * v[93] + 0.035 * v[96] + y[354]; + v[95] = -1. * v[87] + 4.89663865010925e-12 * v[85]; + v[90] = -1. * v[91] + 4.89663865010925e-12 * v[95]; + v[82] = y[352] + 0.088 * v[94]; + y[364] = 0.07 * v[90] + v[82]; + v[84] = -1. * v[88] + 4.89663865010925e-12 * v[83]; + v[98] = -1. * v[92] + 4.89663865010925e-12 * v[84]; + v[99] = y[353] + 0.088 * v[97]; + y[365] = 0.07 * v[98] + v[99]; + v[100] = -1. * v[86] + 4.89663865010925e-12 * v[89]; + v[101] = -1. * v[96] + 4.89663865010925e-12 * v[100]; + v[102] = y[354] + 0.088 * v[93]; + y[366] = 0.07 * v[101] + v[102]; + v[103] = cos(x[13]); + v[104] = sin(x[13]); + v[105] = 4.89663865010925e-12 * v[104]; + v[106] = v[94] * v[103] + v[91] * v[105] + v[95] * v[104]; + v[107] = -v[104]; + v[108] = 4.89663865010925e-12 * v[103]; + v[95] = v[94] * v[107] + v[91] * v[108] + v[95] * v[103]; + y[368] = 0.02 * v[106] + 0.04 * v[95] + 0.08 * v[90] + v[82]; + v[109] = v[97] * v[103] + v[92] * v[105] + v[84] * v[104]; + v[84] = v[97] * v[107] + v[92] * v[108] + v[84] * v[103]; + y[369] = 0.02 * v[109] + 0.04 * v[84] + 0.08 * v[98] + v[99]; + v[105] = v[93] * v[103] + v[96] * v[105] + v[100] * v[104]; + v[108] = v[93] * v[107] + v[96] * v[108] + v[100] * v[103]; + y[370] = 0.02 * v[105] + 0.04 * v[108] + 0.08 * v[101] + v[102]; + y[372] = 0.04 * v[106] + 0.02 * v[95] + 0.08 * v[90] + v[82]; + y[373] = 0.04 * v[109] + 0.02 * v[84] + 0.08 * v[98] + v[99]; + y[374] = 0.04 * v[105] + 0.02 * v[108] + 0.08 * v[101] + v[102]; + y[376] = 0.04 * v[106] + 0.06 * v[95] + 0.085 * v[90] + v[82]; + y[377] = 0.04 * v[109] + 0.06 * v[84] + 0.085 * v[98] + v[99]; + y[378] = 0.04 * v[105] + 0.06 * v[108] + 0.085 * v[101] + v[102]; + y[380] = 0.06 * v[106] + 0.04 * v[95] + 0.085 * v[90] + v[82]; + y[381] = 0.06 * v[109] + 0.04 * v[84] + 0.085 * v[98] + v[99]; + y[382] = 0.06 * v[105] + 0.04 * v[108] + 0.085 * v[101] + v[102]; + y[384] = -0.0530330085889673 * v[106] + -0.0530330085890148 * v[95] + 0.117 * v[90] + v[82]; + y[385] = -0.0530330085889673 * v[109] + -0.0530330085890148 * v[84] + 0.117 * v[98] + v[99]; + y[386] = -0.0530330085889673 * v[105] + -0.0530330085890148 * v[108] + 0.117 * v[101] + v[102]; + y[388] = -0.0318198051533804 * v[106] + -0.0318198051534089 * v[95] + 0.117 * v[90] + v[82]; + y[389] = -0.0318198051533804 * v[109] + -0.0318198051534089 * v[84] + 0.117 * v[98] + v[99]; + y[390] = -0.0318198051533804 * v[105] + -0.0318198051534089 * v[108] + 0.117 * v[101] + v[102]; + y[392] = -0.0106066017177935 * v[106] + -0.010606601717803 * v[95] + 0.117 * v[90] + v[82]; + y[393] = -0.0106066017177935 * v[109] + -0.010606601717803 * v[84] + 0.117 * v[98] + v[99]; + y[394] = -0.0106066017177935 * v[105] + -0.010606601717803 * v[108] + 0.117 * v[101] + v[102]; + y[396] = 0.0106066017177935 * v[106] + 0.010606601717803 * v[95] + 0.117 * v[90] + v[82]; + y[397] = 0.0106066017177935 * v[109] + 0.010606601717803 * v[84] + 0.117 * v[98] + v[99]; + y[398] = 0.0106066017177935 * v[105] + 0.010606601717803 * v[108] + 0.117 * v[101] + v[102]; + y[400] = 0.0318198051533804 * v[106] + 0.0318198051534089 * v[95] + 0.117 * v[90] + v[82]; + y[401] = 0.0318198051533804 * v[109] + 0.0318198051534089 * v[84] + 0.117 * v[98] + v[99]; + y[402] = 0.0318198051533804 * v[105] + 0.0318198051534089 * v[108] + 0.117 * v[101] + v[102]; + y[404] = 0.0530330085889673 * v[106] + 0.0530330085890148 * v[95] + 0.117 * v[90] + v[82]; + y[405] = 0.0530330085889673 * v[109] + 0.0530330085890148 * v[84] + 0.117 * v[98] + v[99]; + y[406] = 0.0530330085889673 * v[105] + 0.0530330085890148 * v[108] + 0.117 * v[101] + v[102]; + y[408] = -0.0530330085889673 * v[106] + -0.0530330085890148 * v[95] + 0.137 * v[90] + v[82]; + y[409] = -0.0530330085889673 * v[109] + -0.0530330085890148 * v[84] + 0.137 * v[98] + v[99]; + y[410] = -0.0530330085889673 * v[105] + -0.0530330085890148 * v[108] + 0.137 * v[101] + v[102]; + y[412] = -0.0318198051533804 * v[106] + -0.0318198051534089 * v[95] + 0.137 * v[90] + v[82]; + y[413] = -0.0318198051533804 * v[109] + -0.0318198051534089 * v[84] + 0.137 * v[98] + v[99]; + y[414] = -0.0318198051533804 * v[105] + -0.0318198051534089 * v[108] + 0.137 * v[101] + v[102]; + y[416] = -0.0106066017177935 * v[106] + -0.010606601717803 * v[95] + 0.137 * v[90] + v[82]; + y[417] = -0.0106066017177935 * v[109] + -0.010606601717803 * v[84] + 0.137 * v[98] + v[99]; + y[418] = -0.0106066017177935 * v[105] + -0.010606601717803 * v[108] + 0.137 * v[101] + v[102]; + y[420] = 0.0106066017177935 * v[106] + 0.010606601717803 * v[95] + 0.137 * v[90] + v[82]; + y[421] = 0.0106066017177935 * v[109] + 0.010606601717803 * v[84] + 0.137 * v[98] + v[99]; + y[422] = 0.0106066017177935 * v[105] + 0.010606601717803 * v[108] + 0.137 * v[101] + v[102]; + y[424] = 0.0318198051533804 * v[106] + 0.0318198051534089 * v[95] + 0.137 * v[90] + v[82]; + y[425] = 0.0318198051533804 * v[109] + 0.0318198051534089 * v[84] + 0.137 * v[98] + v[99]; + y[426] = 0.0318198051533804 * v[105] + 0.0318198051534089 * v[108] + 0.137 * v[101] + v[102]; + y[428] = 0.0530330085889673 * v[106] + 0.0530330085890148 * v[95] + 0.137 * v[90] + v[82]; + y[429] = 0.0530330085889673 * v[109] + 0.0530330085890148 * v[84] + 0.137 * v[98] + v[99]; + y[430] = 0.0530330085889673 * v[105] + 0.0530330085890148 * v[108] + 0.137 * v[101] + v[102]; + y[432] = -0.0530330085889673 * v[106] + -0.0530330085890148 * v[95] + 0.157 * v[90] + v[82]; + y[433] = -0.0530330085889673 * v[109] + -0.0530330085890148 * v[84] + 0.157 * v[98] + v[99]; + y[434] = -0.0530330085889673 * v[105] + -0.0530330085890148 * v[108] + 0.157 * v[101] + v[102]; + y[436] = -0.0318198051533804 * v[106] + -0.0318198051534089 * v[95] + 0.157 * v[90] + v[82]; + y[437] = -0.0318198051533804 * v[109] + -0.0318198051534089 * v[84] + 0.157 * v[98] + v[99]; + y[438] = -0.0318198051533804 * v[105] + -0.0318198051534089 * v[108] + 0.157 * v[101] + v[102]; + y[440] = -0.0106066017177935 * v[106] + -0.010606601717803 * v[95] + 0.157 * v[90] + v[82]; + y[441] = -0.0106066017177935 * v[109] + -0.010606601717803 * v[84] + 0.157 * v[98] + v[99]; + y[442] = -0.0106066017177935 * v[105] + -0.010606601717803 * v[108] + 0.157 * v[101] + v[102]; + y[444] = 0.0106066017177935 * v[106] + 0.010606601717803 * v[95] + 0.157 * v[90] + v[82]; + y[445] = 0.0106066017177935 * v[109] + 0.010606601717803 * v[84] + 0.157 * v[98] + v[99]; + y[446] = 0.0106066017177935 * v[105] + 0.010606601717803 * v[108] + 0.157 * v[101] + v[102]; + y[448] = 0.0318198051533804 * v[106] + 0.0318198051534089 * v[95] + 0.157 * v[90] + v[82]; + y[449] = 0.0318198051533804 * v[109] + 0.0318198051534089 * v[84] + 0.157 * v[98] + v[99]; + y[450] = 0.0318198051533804 * v[105] + 0.0318198051534089 * v[108] + 0.157 * v[101] + v[102]; + y[452] = 0.0530330085889673 * v[106] + 0.0530330085890148 * v[95] + 0.157 * v[90] + v[82]; + y[453] = 0.0530330085889673 * v[109] + 0.0530330085890148 * v[84] + 0.157 * v[98] + v[99]; + y[454] = 0.0530330085889673 * v[105] + 0.0530330085890148 * v[108] + 0.157 * v[101] + v[102]; + y[456] = 0.0565685424948984 * v[106] + 0.0565685424949492 * v[95] + 0.1874 * v[90] + v[82]; + y[457] = 0.0565685424948984 * v[109] + 0.0565685424949492 * v[84] + 0.1874 * v[98] + v[99]; + y[458] = 0.0565685424948984 * v[105] + 0.0565685424949492 * v[108] + 0.1874 * v[101] + v[102]; + y[460] = 0.0516187950265948 * v[106] + 0.0516187950266411 * v[95] + 0.2094 * v[90] + v[82]; + y[461] = 0.0516187950265948 * v[109] + 0.0516187950266411 * v[84] + 0.2094 * v[98] + v[99]; + y[462] = 0.0516187950265948 * v[105] + 0.0516187950266411 * v[108] + 0.2094 * v[101] + v[102]; + y[464] = -0.0565685424948984 * v[106] + -0.0565685424949492 * v[95] + 0.1874 * v[90] + v[82]; + y[465] = -0.0565685424948984 * v[109] + -0.0565685424949492 * v[84] + 0.1874 * v[98] + v[99]; + y[466] = -0.0565685424948984 * v[105] + -0.0565685424949492 * v[108] + 0.1874 * v[101] + v[102]; + y[468] = -0.0516187950265948 * v[106] + -0.0516187950266411 * v[95] + 0.2094 * v[90] + v[82]; + y[469] = -0.0516187950265948 * v[109] + -0.0516187950266411 * v[84] + 0.2094 * v[98] + v[99]; + y[470] = -0.0516187950265948 * v[105] + -0.0516187950266411 * v[108] + 0.2094 * v[101] + v[102]; + y[476] = -0.0399999991059303 * v[1]; + y[477] = -0.2875 + -0.0399999991059303 * v[2]; + y[480] = -0.0850000008940697 * v[7] + 0.0399999991059303 * v[1]; + y[481] = -0.2875 + -0.0850000008940697 * v[6] + 0.0399999991059303 * v[2]; + y[482] = 0.333 + 1.95865541626434e-13 + -0.0850000008940697 * v[4]; + y[484] = + 0.0385857857763767 * v[19] + 0.0289393402636051 * v[15] + -0.0517677664756775 * v[8] + v[9]; + y[485] = + 0.0385857857763767 * v[5] + 0.0289393402636051 * v[14] + -0.0517677664756775 * v[10] + v[11]; + y[486] = + 0.0385857857763767 * v[18] + 0.0289393402636051 * v[3] + -0.0517677664756775 * v[12] + v[13]; + y[488] = + -0.041449997574091 * v[17] + 0.0492218732833862 * v[23] + 0.0289125014096498 * v[21] + v[24]; + y[489] = + -0.041449997574091 * v[25] + 0.0492218732833862 * v[26] + 0.0289125014096498 * v[20] + v[27]; + y[490] = + -0.041449997574091 * v[16] + 0.0492218732833862 * v[22] + 0.0289125014096498 * v[28] + v[0]; + y[492] = 0.0375000014901161 * v[34] + -0.109999999403954 * v[32] + y[116]; + y[493] = 0.0375000014901161 * v[35] + -0.109999999403954 * v[30] + y[117]; + y[494] = 0.0375000014901161 * v[33] + -0.109999999403954 * v[36] + y[118]; + y[496] = 0.0424309633672237 * v[41] + 0.0144476993009448 * v[38] + y[116]; + y[497] = 0.0424309633672237 * v[44] + 0.0144476993009448 * v[39] + y[117]; + y[498] = 0.0424309633672237 * v[40] + 0.0144476993009448 * v[43] + y[118]; + y[500] = + 0.0153005504980683 * v[53] + 0.0153005504980683 * v[42] + 0.0745901614427567 * v[37] + v[29]; + y[501] = + 0.0153005504980683 * v[56] + 0.0153005504980683 * v[31] + 0.0745901614427567 * v[45] + v[46]; + y[502] = + 0.0153005504980683 * v[52] + 0.0153005504980683 * v[55] + 0.0745901614427567 * v[48] + v[49]; + y[504] = -5.20417042793042e-18 * v[53] + -2.16840434497101e-18 * v[42] + + 0.129201397299767 * v[37] + v[29]; + y[505] = -5.20417042793042e-18 * v[56] + -2.16840434497101e-18 * v[31] + + 0.129201397299767 * v[45] + v[46]; + y[506] = -5.20417042793042e-18 * v[52] + -2.16840434497101e-18 * v[55] + + 0.129201397299767 * v[48] + v[49]; + y[508] = + 0.0540936700999737 * v[53] + 0.0540936700999737 * v[42] + 0.198400005698204 * v[37] + v[29]; + y[509] = + 0.0540936700999737 * v[56] + 0.0540936700999737 * v[31] + 0.198400005698204 * v[45] + v[46]; + y[510] = + 0.0540936700999737 * v[52] + 0.0540936700999737 * v[55] + 0.198400005698204 * v[48] + v[49]; + y[512] = + -0.0540936700999737 * v[53] + -0.0540936700999737 * v[42] + 0.198400005698204 * v[37] + v[29]; + y[513] = + -0.0540936700999737 * v[56] + -0.0540936700999737 * v[31] + 0.198400005698204 * v[45] + v[46]; + y[514] = + -0.0540936700999737 * v[52] + -0.0540936700999737 * v[55] + 0.198400005698204 * v[48] + v[49]; + y[520] = -0.0399999991059303 * v[50]; + y[521] = 0.2875 + -0.0399999991059303 * v[47]; + y[524] = -0.0850000008940697 * v[60] + 0.0399999991059303 * v[50]; + y[525] = 0.2875 + -0.0850000008940697 * v[59] + 0.0399999991059303 * v[47]; + y[526] = 0.333 + 1.95865541626434e-13 + -0.0850000008940697 * v[57]; + y[528] = + 0.0385857857763767 * v[72] + 0.0289393402636051 * v[68] + -0.0517677664756775 * v[61] + v[62]; + y[529] = + 0.0385857857763767 * v[58] + 0.0289393402636051 * v[67] + -0.0517677664756775 * v[63] + v[64]; + y[530] = + 0.0385857857763767 * v[71] + 0.0289393402636051 * v[51] + -0.0517677664756775 * v[65] + v[66]; + y[532] = + -0.041449997574091 * v[70] + 0.0492218732833862 * v[76] + 0.0289125014096498 * v[74] + v[77]; + y[533] = + -0.041449997574091 * v[78] + 0.0492218732833862 * v[79] + 0.0289125014096498 * v[73] + v[80]; + y[534] = + -0.041449997574091 * v[69] + 0.0492218732833862 * v[75] + 0.0289125014096498 * v[81] + v[54]; + y[536] = 0.0375000014901161 * v[87] + -0.109999999403954 * v[85] + y[352]; + y[537] = 0.0375000014901161 * v[88] + -0.109999999403954 * v[83] + y[353]; + y[538] = 0.0375000014901161 * v[86] + -0.109999999403954 * v[89] + y[354]; + y[540] = 0.0424309633672237 * v[94] + 0.0144476993009448 * v[91] + y[352]; + y[541] = 0.0424309633672237 * v[97] + 0.0144476993009448 * v[92] + y[353]; + y[542] = 0.0424309633672237 * v[93] + 0.0144476993009448 * v[96] + y[354]; + y[544] = + 0.0153005504980683 * v[106] + 0.0153005504980683 * v[95] + 0.0745901614427567 * v[90] + v[82]; + y[545] = + 0.0153005504980683 * v[109] + 0.0153005504980683 * v[84] + 0.0745901614427567 * v[98] + v[99]; + y[546] = 0.0153005504980683 * v[105] + 0.0153005504980683 * v[108] + 0.0745901614427567 * v[101] + + v[102]; + y[548] = -5.20417042793042e-18 * v[106] + -2.16840434497101e-18 * v[95] + + 0.129201397299767 * v[90] + v[82]; + y[549] = -5.20417042793042e-18 * v[109] + -2.16840434497101e-18 * v[84] + + 0.129201397299767 * v[98] + v[99]; + y[550] = -5.20417042793042e-18 * v[105] + -2.16840434497101e-18 * v[108] + + 0.129201397299767 * v[101] + v[102]; + y[552] = + 0.0540936700999737 * v[106] + 0.0540936700999737 * v[95] + 0.198400005698204 * v[90] + v[82]; + y[553] = + 0.0540936700999737 * v[109] + 0.0540936700999737 * v[84] + 0.198400005698204 * v[98] + v[99]; + y[554] = 0.0540936700999737 * v[105] + 0.0540936700999737 * v[108] + 0.198400005698204 * v[101] + + v[102]; + y[556] = -0.0540936700999737 * v[106] + -0.0540936700999737 * v[95] + 0.198400005698204 * v[90] + + v[82]; + y[557] = -0.0540936700999737 * v[109] + -0.0540936700999737 * v[84] + 0.198400005698204 * v[98] + + v[99]; + y[558] = -0.0540936700999737 * v[105] + -0.0540936700999737 * v[108] + + 0.198400005698204 * v[101] + v[102]; + // dependent variables without operations + y[0] = 0.; + y[1] = -0.2875; + y[2] = 0.05; + y[3] = 0.0799999982118607; + y[6] = 0.333; + y[7] = 0.0599999986588955; + y[10] = 0.333; + y[11] = 0.0599999986588955; + y[12] = 0.; + y[13] = -0.2875; + y[14] = 0.213; + y[15] = 0.0599999986588955; + y[16] = 0.; + y[17] = -0.2875; + y[18] = 0.163; + y[19] = 0.0599999986588955; + y[22] = 0.333000000000147; + y[23] = 0.0599999986588955; + y[26] = 0.333000000000392; + y[27] = 0.0599999986588955; + y[31] = 0.0599999986588955; + y[35] = 0.0599999986588955; + y[39] = 0.0599999986588955; + y[43] = 0.0500000007450581; + y[47] = 0.0549999997019768; + y[51] = 0.0549999997019768; + y[55] = 0.0599999986588955; + y[59] = 0.0549999997019768; + y[63] = 0.0549999997019768; + y[67] = 0.0549999997019768; + y[71] = 0.0599999986588955; + y[75] = 0.0599999986588955; + y[79] = 0.0599999986588955; + y[83] = 0.0500000007450581; + y[87] = 0.025000000372529; + y[91] = 0.025000000372529; + y[95] = 0.025000000372529; + y[99] = 0.025000000372529; + y[103] = 0.025000000372529; + y[107] = 0.025000000372529; + y[111] = 0.025000000372529; + y[115] = 0.025000000372529; + y[119] = 0.0500000007450581; + y[123] = 0.0500000007450581; + y[127] = 0.0520000010728836; + y[131] = 0.0500000007450581; + y[135] = 0.025000000372529; + y[139] = 0.025000000372529; + y[143] = 0.0199999995529652; + y[147] = 0.0199999995529652; + y[151] = 0.0280000008642673; + y[155] = 0.0280000008642673; + y[159] = 0.0280000008642673; + y[163] = 0.0280000008642673; + y[167] = 0.0280000008642673; + y[171] = 0.0280000008642673; + y[175] = 0.0260000005364418; + y[179] = 0.0260000005364418; + y[183] = 0.0260000005364418; + y[187] = 0.0260000005364418; + y[191] = 0.0260000005364418; + y[195] = 0.0260000005364418; + y[199] = 0.0240000002086163; + y[203] = 0.0240000002086163; + y[207] = 0.0240000002086163; + y[211] = 0.0240000002086163; + y[215] = 0.0240000002086163; + y[219] = 0.0240000002086163; + y[223] = 0.0120000001043081; + y[227] = 0.0120000001043081; + y[231] = 0.0120000001043081; + y[235] = 0.0120000001043081; + y[236] = 0.; + y[237] = 0.2875; + y[238] = 0.05; + y[239] = 0.0799999982118607; + y[242] = 0.333; + y[243] = 0.0599999986588955; + y[246] = 0.333; + y[247] = 0.0599999986588955; + y[248] = 0.; + y[249] = 0.2875; + y[250] = 0.213; + y[251] = 0.0599999986588955; + y[252] = 0.; + y[253] = 0.2875; + y[254] = 0.163; + y[255] = 0.0599999986588955; + y[258] = 0.333000000000147; + y[259] = 0.0599999986588955; + y[262] = 0.333000000000392; + y[263] = 0.0599999986588955; + y[267] = 0.0599999986588955; + y[271] = 0.0599999986588955; + y[275] = 0.0599999986588955; + y[279] = 0.0500000007450581; + y[283] = 0.0549999997019768; + y[287] = 0.0549999997019768; + y[291] = 0.0599999986588955; + y[295] = 0.0549999997019768; + y[299] = 0.0549999997019768; + y[303] = 0.0549999997019768; + y[307] = 0.0599999986588955; + y[311] = 0.0599999986588955; + y[315] = 0.0599999986588955; + y[319] = 0.0500000007450581; + y[323] = 0.025000000372529; + y[327] = 0.025000000372529; + y[331] = 0.025000000372529; + y[335] = 0.025000000372529; + y[339] = 0.025000000372529; + y[343] = 0.025000000372529; + y[347] = 0.025000000372529; + y[351] = 0.025000000372529; + y[355] = 0.0500000007450581; + y[359] = 0.0500000007450581; + y[363] = 0.0520000010728836; + y[367] = 0.0500000007450581; + y[371] = 0.025000000372529; + y[375] = 0.025000000372529; + y[379] = 0.0199999995529652; + y[383] = 0.0199999995529652; + y[387] = 0.0280000008642673; + y[391] = 0.0280000008642673; + y[395] = 0.0280000008642673; + y[399] = 0.0280000008642673; + y[403] = 0.0280000008642673; + y[407] = 0.0280000008642673; + y[411] = 0.0260000005364418; + y[415] = 0.0260000005364418; + y[419] = 0.0260000005364418; + y[423] = 0.0260000005364418; + y[427] = 0.0260000005364418; + y[431] = 0.0260000005364418; + y[435] = 0.0240000002086163; + y[439] = 0.0240000002086163; + y[443] = 0.0240000002086163; + y[447] = 0.0240000002086163; + y[451] = 0.0240000002086163; + y[455] = 0.0240000002086163; + y[459] = 0.0120000001043081; + y[463] = 0.0120000001043081; + y[467] = 0.0120000001043081; + y[471] = 0.0120000001043081; + y[472] = 0.; + y[473] = -0.287499994039536; + y[474] = 0.0500000007450581; + y[475] = 0.0799999982118607; + y[478] = 0.24799999910593; + y[479] = 0.153941467404366; + y[483] = 0.153941467404366; + y[487] = 0.128210678696632; + y[491] = 0.126465573906898; + y[495] = 0.176216393709183; + y[499] = 0.0948232412338257; + y[503] = 0.0721197500824928; + y[507] = 0.103986009955406; + y[511] = 0.0235433969646692; + y[515] = 0.0235433969646692; + y[516] = 0.; + y[517] = 0.287499994039536; + y[518] = 0.0500000007450581; + y[519] = 0.0799999982118607; + y[522] = 0.24799999910593; + y[523] = 0.153941467404366; + y[527] = 0.153941467404366; + y[531] = 0.128210678696632; + y[535] = 0.126465573906898; + y[539] = 0.176216393709183; + y[543] = 0.0948232412338257; + y[547] = 0.0721197500824928; + y[551] = 0.103986009955406; + y[555] = 0.0235433969646692; + y[559] = 0.0235433969646692; + + // + // environment vs. robot collisions + // + + // right_panda_rightfinger + if (sphere_environment_in_collision(environment, y[556], y[557], y[558], y[559])) + { + if (sphere_environment_in_collision(environment, y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_leftfinger + if (sphere_environment_in_collision(environment, y[552], y[553], y[554], y[555])) + { + if (sphere_environment_in_collision(environment, y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_hand + if (sphere_environment_in_collision(environment, y[548], y[549], y[550], y[551])) + { + if (sphere_environment_in_collision(environment, y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link7 + if (sphere_environment_in_collision(environment, y[544], y[545], y[546], y[547])) + { + if (sphere_environment_in_collision(environment, y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link6 + if (sphere_environment_in_collision(environment, y[540], y[541], y[542], y[543])) + { + if (sphere_environment_in_collision(environment, y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link5 + if (sphere_environment_in_collision(environment, y[536], y[537], y[538], y[539])) + { + if (sphere_environment_in_collision(environment, y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link4 + if (sphere_environment_in_collision(environment, y[532], y[533], y[534], y[535])) + { + if (sphere_environment_in_collision(environment, y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link3 + if (sphere_environment_in_collision(environment, y[528], y[529], y[530], y[531])) + { + if (sphere_environment_in_collision(environment, y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link2 + if (sphere_environment_in_collision(environment, y[524], y[525], y[526], y[527])) + { + if (sphere_environment_in_collision(environment, y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link1 + if (sphere_environment_in_collision(environment, y[520], y[521], y[522], y[523])) + { + if (sphere_environment_in_collision(environment, y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link0 + if (sphere_environment_in_collision(environment, y[516], y[517], y[518], y[519])) + { + if (sphere_environment_in_collision(environment, y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_rightfinger + if (sphere_environment_in_collision(environment, y[512], y[513], y[514], y[515])) + { + if (sphere_environment_in_collision(environment, y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_leftfinger + if (sphere_environment_in_collision(environment, y[508], y[509], y[510], y[511])) + { + if (sphere_environment_in_collision(environment, y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_hand + if (sphere_environment_in_collision(environment, y[504], y[505], y[506], y[507])) + { + if (sphere_environment_in_collision(environment, y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link7 + if (sphere_environment_in_collision(environment, y[500], y[501], y[502], y[503])) + { + if (sphere_environment_in_collision(environment, y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link6 + if (sphere_environment_in_collision(environment, y[496], y[497], y[498], y[499])) + { + if (sphere_environment_in_collision(environment, y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[124], y[125], y[126], y[127])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link5 + if (sphere_environment_in_collision(environment, y[492], y[493], y[494], y[495])) + { + if (sphere_environment_in_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link4 + if (sphere_environment_in_collision(environment, y[488], y[489], y[490], y[491])) + { + if (sphere_environment_in_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link3 + if (sphere_environment_in_collision(environment, y[484], y[485], y[486], y[487])) + { + if (sphere_environment_in_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link2 + if (sphere_environment_in_collision(environment, y[480], y[481], y[482], y[483])) + { + if (sphere_environment_in_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link1 + if (sphere_environment_in_collision(environment, y[476], y[477], y[478], y[479])) + { + if (sphere_environment_in_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link0 + if (sphere_environment_in_collision(environment, y[472], y[473], y[474], y[475])) + { + if (sphere_environment_in_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + } + + // + // robot self-collisions + // + + // left_panda_link0 vs. left_panda_link5 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[492], y[493], y[494], y[495])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_link6 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[496], y[497], y[498], y[499])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_link5 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[492], y[493], y[494], y[495])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_link6 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[496], y[497], y[498], y[499])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_link5 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[492], y[493], y[494], y[495])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_hand + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_hand + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_hand + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + return true; + } + + template + inline static bool fkcc_attach( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept + { + std::array, 104> v; + std::array, 584> y; + + v[0] = sin(x[0]); + v[1] = -v[0]; + y[4] = -0.08 * v[1]; + v[2] = cos(x[0]); + y[5] = -0.2875 + -0.08 * v[2]; + y[8] = -0.03 * v[1]; + y[9] = -0.2875 + -0.03 * v[2]; + y[20] = 0.03 * v[1]; + y[21] = -0.2875 + 0.03 * v[2]; + y[24] = 0.08 * v[1]; + y[25] = -0.2875 + 0.08 * v[2]; + v[3] = sin(x[1]); + v[4] = -v[3]; + v[5] = cos(x[1]); + v[6] = 4.89663865010925e-12 * v[5]; + v[7] = v[2] * v[4] + v[1] * v[6]; + y[28] = -0.12 * v[7]; + v[6] = v[0] * v[4] + v[2] * v[6]; + y[29] = -0.2875 + -0.12 * v[6]; + v[4] = -1. * v[5]; + y[30] = 0.333 + -0.12 * v[4]; + y[32] = -0.17 * v[7]; + y[33] = -0.2875 + -0.17 * v[6]; + y[34] = 0.333 + -0.17 * v[4]; + v[8] = -1. * v[7] + 4.89663865010925e-12 * v[1]; + v[9] = -0.316 * v[7]; + y[36] = -0.1 * v[8] + v[9]; + v[10] = -1. * v[6] + 4.89663865010925e-12 * v[2]; + v[11] = -0.2875 + -0.316 * v[6]; + y[37] = -0.1 * v[10] + v[11]; + v[12] = 2.39770700697438e-23 + -1. * v[4]; + v[13] = 0.333 + -0.316 * v[4]; + y[38] = -0.1 * v[12] + v[13]; + y[40] = -0.06 * v[8] + v[9]; + y[41] = -0.06 * v[10] + v[11]; + y[42] = -0.06 * v[12] + v[13]; + v[14] = 4.89663865010925e-12 * v[3]; + v[15] = v[2] * v[5] + v[1] * v[14]; + v[16] = cos(x[2]); + v[17] = sin(x[2]); + v[18] = 4.89663865010925e-12 * v[17]; + v[19] = v[15] * v[16] + v[7] * v[18] + v[1] * v[17]; + v[20] = -v[17]; + v[21] = 4.89663865010925e-12 * v[16]; + v[15] = v[15] * v[20] + v[7] * v[21] + v[1] * v[16]; + y[44] = 0.08 * v[19] + 0.06 * v[15] + v[9]; + v[14] = v[0] * v[5] + v[2] * v[14]; + v[5] = v[14] * v[16] + v[6] * v[18] + v[2] * v[17]; + v[14] = v[14] * v[20] + v[6] * v[21] + v[2] * v[16]; + y[45] = 0.08 * v[5] + 0.06 * v[14] + v[11]; + v[3] = -1. * v[3]; + v[18] = v[3] * v[16] + v[4] * v[18] + 4.89663865010925e-12 * v[17]; + v[3] = v[3] * v[20] + v[4] * v[21] + 4.89663865010925e-12 * v[16]; + y[46] = 0.08 * v[18] + 0.06 * v[3] + v[13]; + y[48] = 0.08 * v[19] + 0.02 * v[15] + v[9]; + y[49] = 0.08 * v[5] + 0.02 * v[14] + v[11]; + y[50] = 0.08 * v[18] + 0.02 * v[3] + v[13]; + v[21] = cos(x[3]); + v[20] = sin(x[3]); + v[16] = 4.89663865010925e-12 * v[20]; + v[17] = v[19] * v[21] + v[15] * v[16] + v[8] * v[20]; + v[0] = -v[20]; + v[22] = 4.89663865010925e-12 * v[21]; + v[23] = v[19] * v[0] + v[15] * v[22] + v[8] * v[21]; + v[24] = v[9] + 0.0825 * v[19]; + y[52] = -0.08 * v[17] + 0.095 * v[23] + v[24]; + v[25] = v[5] * v[21] + v[14] * v[16] + v[10] * v[20]; + v[26] = v[5] * v[0] + v[14] * v[22] + v[10] * v[21]; + v[27] = v[11] + 0.0825 * v[5]; + y[53] = -0.08 * v[25] + 0.095 * v[26] + v[27]; + v[16] = v[18] * v[21] + v[3] * v[16] + v[12] * v[20]; + v[22] = v[18] * v[0] + v[3] * v[22] + v[12] * v[21]; + v[0] = v[13] + 0.0825 * v[18]; + y[54] = -0.08 * v[16] + 0.095 * v[22] + v[0]; + v[21] = -1. * v[15] + 4.89663865010925e-12 * v[8]; + y[56] = 0.02 * v[21] + v[24]; + v[20] = -1. * v[14] + 4.89663865010925e-12 * v[10]; + y[57] = 0.02 * v[20] + v[27]; + v[28] = -1. * v[3] + 4.89663865010925e-12 * v[12]; + y[58] = 0.02 * v[28] + v[0]; + y[60] = 0.06 * v[21] + v[24]; + y[61] = 0.06 * v[20] + v[27]; + y[62] = 0.06 * v[28] + v[0]; + y[64] = -0.08 * v[17] + 0.06 * v[23] + v[24]; + y[65] = -0.08 * v[25] + 0.06 * v[26] + v[27]; + y[66] = -0.08 * v[16] + 0.06 * v[22] + v[0]; + v[29] = sin(x[4]); + v[30] = -v[29]; + v[31] = cos(x[4]); + v[32] = 4.89663865010925e-12 * v[31]; + v[33] = -1. * v[31]; + v[34] = v[17] * v[30] + v[23] * v[32] + v[21] * v[33]; + y[116] = v[24] + -0.0825 * v[17] + 0.384 * v[23]; + y[68] = 0.055 * v[34] + y[116]; + v[35] = v[25] * v[30] + v[26] * v[32] + v[20] * v[33]; + y[117] = v[27] + -0.0825 * v[25] + 0.384 * v[26]; + y[69] = 0.055 * v[35] + y[117]; + v[33] = v[16] * v[30] + v[22] * v[32] + v[28] * v[33]; + y[118] = v[0] + -0.0825 * v[16] + 0.384 * v[22]; + y[70] = 0.055 * v[33] + y[118]; + y[72] = 0.075 * v[34] + y[116]; + y[73] = 0.075 * v[35] + y[117]; + y[74] = 0.075 * v[33] + y[118]; + v[32] = v[23] + 4.89663865010925e-12 * v[21]; + y[76] = -0.22 * v[32] + y[116]; + v[30] = v[26] + 4.89663865010925e-12 * v[20]; + y[77] = -0.22 * v[30] + y[117]; + v[36] = v[22] + 4.89663865010925e-12 * v[28]; + y[78] = -0.22 * v[36] + y[118]; + y[80] = 0.05 * v[34] + -0.18 * v[32] + y[116]; + y[81] = 0.05 * v[35] + -0.18 * v[30] + y[117]; + y[82] = 0.05 * v[33] + -0.18 * v[36] + y[118]; + v[37] = 4.89663865010925e-12 * v[29]; + v[29] = -1. * v[29]; + v[38] = v[17] * v[31] + v[23] * v[37] + v[21] * v[29]; + y[84] = 0.01 * v[38] + 0.08 * v[34] + -0.14 * v[32] + y[116]; + v[39] = v[25] * v[31] + v[26] * v[37] + v[20] * v[29]; + y[85] = 0.01 * v[39] + 0.08 * v[35] + -0.14 * v[30] + y[117]; + v[29] = v[16] * v[31] + v[22] * v[37] + v[28] * v[29]; + y[86] = 0.01 * v[29] + 0.08 * v[33] + -0.14 * v[36] + y[118]; + y[88] = 0.01 * v[38] + 0.085 * v[34] + -0.11 * v[32] + y[116]; + y[89] = 0.01 * v[39] + 0.085 * v[35] + -0.11 * v[30] + y[117]; + y[90] = 0.01 * v[29] + 0.085 * v[33] + -0.11 * v[36] + y[118]; + y[92] = 0.01 * v[38] + 0.09 * v[34] + -0.08 * v[32] + y[116]; + y[93] = 0.01 * v[39] + 0.09 * v[35] + -0.08 * v[30] + y[117]; + y[94] = 0.01 * v[29] + 0.09 * v[33] + -0.08 * v[36] + y[118]; + y[96] = 0.01 * v[38] + 0.095 * v[34] + -0.05 * v[32] + y[116]; + y[97] = 0.01 * v[39] + 0.095 * v[35] + -0.05 * v[30] + y[117]; + y[98] = 0.01 * v[29] + 0.095 * v[33] + -0.05 * v[36] + y[118]; + y[100] = -0.01 * v[38] + 0.08 * v[34] + -0.14 * v[32] + y[116]; + y[101] = -0.01 * v[39] + 0.08 * v[35] + -0.14 * v[30] + y[117]; + y[102] = -0.01 * v[29] + 0.08 * v[33] + -0.14 * v[36] + y[118]; + y[104] = -0.01 * v[38] + 0.085 * v[34] + -0.11 * v[32] + y[116]; + y[105] = -0.01 * v[39] + 0.085 * v[35] + -0.11 * v[30] + y[117]; + y[106] = -0.01 * v[29] + 0.085 * v[33] + -0.11 * v[36] + y[118]; + y[108] = -0.01 * v[38] + 0.09 * v[34] + -0.08 * v[32] + y[116]; + y[109] = -0.01 * v[39] + 0.09 * v[35] + -0.08 * v[30] + y[117]; + y[110] = -0.01 * v[29] + 0.09 * v[33] + -0.08 * v[36] + y[118]; + y[112] = -0.01 * v[38] + 0.095 * v[34] + -0.05 * v[32] + y[116]; + y[113] = -0.01 * v[39] + 0.095 * v[35] + -0.05 * v[30] + y[117]; + y[114] = -0.01 * v[29] + 0.095 * v[33] + -0.05 * v[36] + y[118]; + v[37] = cos(x[5]); + v[31] = sin(x[5]); + v[40] = 4.89663865010925e-12 * v[31]; + v[41] = v[38] * v[37] + v[34] * v[40] + v[32] * v[31]; + v[42] = -v[31]; + v[43] = 4.89663865010925e-12 * v[37]; + v[38] = v[38] * v[42] + v[34] * v[43] + v[32] * v[37]; + y[120] = 0.08 * v[41] + -0.01 * v[38] + y[116]; + v[44] = v[39] * v[37] + v[35] * v[40] + v[30] * v[31]; + v[39] = v[39] * v[42] + v[35] * v[43] + v[30] * v[37]; + y[121] = 0.08 * v[44] + -0.01 * v[39] + y[117]; + v[40] = v[29] * v[37] + v[33] * v[40] + v[36] * v[31]; + v[43] = v[29] * v[42] + v[33] * v[43] + v[36] * v[37]; + y[122] = 0.08 * v[40] + -0.01 * v[43] + y[118]; + y[124] = 0.08 * v[41] + 0.035 * v[38] + y[116]; + y[125] = 0.08 * v[44] + 0.035 * v[39] + y[117]; + y[126] = 0.08 * v[40] + 0.035 * v[43] + y[118]; + v[42] = -1. * v[34] + 4.89663865010925e-12 * v[32]; + y[569] = -1. * v[38] + 4.89663865010925e-12 * v[42]; + v[37] = y[116] + 0.088 * v[41]; + y[128] = 0.07 * y[569] + v[37]; + v[29] = -1. * v[35] + 4.89663865010925e-12 * v[30]; + y[570] = -1. * v[39] + 4.89663865010925e-12 * v[29]; + v[31] = y[117] + 0.088 * v[44]; + y[129] = 0.07 * y[570] + v[31]; + v[45] = -1. * v[33] + 4.89663865010925e-12 * v[36]; + y[571] = -1. * v[43] + 4.89663865010925e-12 * v[45]; + v[46] = y[118] + 0.088 * v[40]; + y[130] = 0.07 * y[571] + v[46]; + v[47] = cos(x[6]); + v[48] = sin(x[6]); + v[49] = 4.89663865010925e-12 * v[48]; + v[50] = v[41] * v[47] + v[38] * v[49] + v[42] * v[48]; + v[51] = -v[48]; + v[52] = 4.89663865010925e-12 * v[47]; + v[42] = v[41] * v[51] + v[38] * v[52] + v[42] * v[47]; + y[132] = 0.02 * v[50] + 0.04 * v[42] + 0.08 * y[569] + v[37]; + v[53] = v[44] * v[47] + v[39] * v[49] + v[29] * v[48]; + v[29] = v[44] * v[51] + v[39] * v[52] + v[29] * v[47]; + y[133] = 0.02 * v[53] + 0.04 * v[29] + 0.08 * y[570] + v[31]; + v[49] = v[40] * v[47] + v[43] * v[49] + v[45] * v[48]; + v[52] = v[40] * v[51] + v[43] * v[52] + v[45] * v[47]; + y[134] = 0.02 * v[49] + 0.04 * v[52] + 0.08 * y[571] + v[46]; + y[136] = 0.04 * v[50] + 0.02 * v[42] + 0.08 * y[569] + v[37]; + y[137] = 0.04 * v[53] + 0.02 * v[29] + 0.08 * y[570] + v[31]; + y[138] = 0.04 * v[49] + 0.02 * v[52] + 0.08 * y[571] + v[46]; + y[140] = 0.04 * v[50] + 0.06 * v[42] + 0.085 * y[569] + v[37]; + y[141] = 0.04 * v[53] + 0.06 * v[29] + 0.085 * y[570] + v[31]; + y[142] = 0.04 * v[49] + 0.06 * v[52] + 0.085 * y[571] + v[46]; + y[144] = 0.06 * v[50] + 0.04 * v[42] + 0.085 * y[569] + v[37]; + y[145] = 0.06 * v[53] + 0.04 * v[29] + 0.085 * y[570] + v[31]; + y[146] = 0.06 * v[49] + 0.04 * v[52] + 0.085 * y[571] + v[46]; + y[148] = -0.0530330085889673 * v[50] + -0.0530330085890148 * v[42] + 0.117 * y[569] + v[37]; + y[149] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[29] + 0.117 * y[570] + v[31]; + y[150] = -0.0530330085889673 * v[49] + -0.0530330085890148 * v[52] + 0.117 * y[571] + v[46]; + y[152] = -0.0318198051533804 * v[50] + -0.0318198051534089 * v[42] + 0.117 * y[569] + v[37]; + y[153] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[29] + 0.117 * y[570] + v[31]; + y[154] = -0.0318198051533804 * v[49] + -0.0318198051534089 * v[52] + 0.117 * y[571] + v[46]; + y[156] = -0.0106066017177935 * v[50] + -0.010606601717803 * v[42] + 0.117 * y[569] + v[37]; + y[157] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[29] + 0.117 * y[570] + v[31]; + y[158] = -0.0106066017177935 * v[49] + -0.010606601717803 * v[52] + 0.117 * y[571] + v[46]; + y[160] = 0.0106066017177935 * v[50] + 0.010606601717803 * v[42] + 0.117 * y[569] + v[37]; + y[161] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[29] + 0.117 * y[570] + v[31]; + y[162] = 0.0106066017177935 * v[49] + 0.010606601717803 * v[52] + 0.117 * y[571] + v[46]; + y[164] = 0.0318198051533804 * v[50] + 0.0318198051534089 * v[42] + 0.117 * y[569] + v[37]; + y[165] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[29] + 0.117 * y[570] + v[31]; + y[166] = 0.0318198051533804 * v[49] + 0.0318198051534089 * v[52] + 0.117 * y[571] + v[46]; + y[168] = 0.0530330085889673 * v[50] + 0.0530330085890148 * v[42] + 0.117 * y[569] + v[37]; + y[169] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[29] + 0.117 * y[570] + v[31]; + y[170] = 0.0530330085889673 * v[49] + 0.0530330085890148 * v[52] + 0.117 * y[571] + v[46]; + y[172] = -0.0530330085889673 * v[50] + -0.0530330085890148 * v[42] + 0.137 * y[569] + v[37]; + y[173] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[29] + 0.137 * y[570] + v[31]; + y[174] = -0.0530330085889673 * v[49] + -0.0530330085890148 * v[52] + 0.137 * y[571] + v[46]; + y[176] = -0.0318198051533804 * v[50] + -0.0318198051534089 * v[42] + 0.137 * y[569] + v[37]; + y[177] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[29] + 0.137 * y[570] + v[31]; + y[178] = -0.0318198051533804 * v[49] + -0.0318198051534089 * v[52] + 0.137 * y[571] + v[46]; + y[180] = -0.0106066017177935 * v[50] + -0.010606601717803 * v[42] + 0.137 * y[569] + v[37]; + y[181] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[29] + 0.137 * y[570] + v[31]; + y[182] = -0.0106066017177935 * v[49] + -0.010606601717803 * v[52] + 0.137 * y[571] + v[46]; + y[184] = 0.0106066017177935 * v[50] + 0.010606601717803 * v[42] + 0.137 * y[569] + v[37]; + y[185] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[29] + 0.137 * y[570] + v[31]; + y[186] = 0.0106066017177935 * v[49] + 0.010606601717803 * v[52] + 0.137 * y[571] + v[46]; + y[188] = 0.0318198051533804 * v[50] + 0.0318198051534089 * v[42] + 0.137 * y[569] + v[37]; + y[189] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[29] + 0.137 * y[570] + v[31]; + y[190] = 0.0318198051533804 * v[49] + 0.0318198051534089 * v[52] + 0.137 * y[571] + v[46]; + y[192] = 0.0530330085889673 * v[50] + 0.0530330085890148 * v[42] + 0.137 * y[569] + v[37]; + y[193] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[29] + 0.137 * y[570] + v[31]; + y[194] = 0.0530330085889673 * v[49] + 0.0530330085890148 * v[52] + 0.137 * y[571] + v[46]; + y[196] = -0.0530330085889673 * v[50] + -0.0530330085890148 * v[42] + 0.157 * y[569] + v[37]; + y[197] = -0.0530330085889673 * v[53] + -0.0530330085890148 * v[29] + 0.157 * y[570] + v[31]; + y[198] = -0.0530330085889673 * v[49] + -0.0530330085890148 * v[52] + 0.157 * y[571] + v[46]; + y[200] = -0.0318198051533804 * v[50] + -0.0318198051534089 * v[42] + 0.157 * y[569] + v[37]; + y[201] = -0.0318198051533804 * v[53] + -0.0318198051534089 * v[29] + 0.157 * y[570] + v[31]; + y[202] = -0.0318198051533804 * v[49] + -0.0318198051534089 * v[52] + 0.157 * y[571] + v[46]; + y[204] = -0.0106066017177935 * v[50] + -0.010606601717803 * v[42] + 0.157 * y[569] + v[37]; + y[205] = -0.0106066017177935 * v[53] + -0.010606601717803 * v[29] + 0.157 * y[570] + v[31]; + y[206] = -0.0106066017177935 * v[49] + -0.010606601717803 * v[52] + 0.157 * y[571] + v[46]; + y[208] = 0.0106066017177935 * v[50] + 0.010606601717803 * v[42] + 0.157 * y[569] + v[37]; + y[209] = 0.0106066017177935 * v[53] + 0.010606601717803 * v[29] + 0.157 * y[570] + v[31]; + y[210] = 0.0106066017177935 * v[49] + 0.010606601717803 * v[52] + 0.157 * y[571] + v[46]; + y[212] = 0.0318198051533804 * v[50] + 0.0318198051534089 * v[42] + 0.157 * y[569] + v[37]; + y[213] = 0.0318198051533804 * v[53] + 0.0318198051534089 * v[29] + 0.157 * y[570] + v[31]; + y[214] = 0.0318198051533804 * v[49] + 0.0318198051534089 * v[52] + 0.157 * y[571] + v[46]; + y[216] = 0.0530330085889673 * v[50] + 0.0530330085890148 * v[42] + 0.157 * y[569] + v[37]; + y[217] = 0.0530330085889673 * v[53] + 0.0530330085890148 * v[29] + 0.157 * y[570] + v[31]; + y[218] = 0.0530330085889673 * v[49] + 0.0530330085890148 * v[52] + 0.157 * y[571] + v[46]; + y[220] = 0.0565685424948984 * v[50] + 0.0565685424949492 * v[42] + 0.1874 * y[569] + v[37]; + y[221] = 0.0565685424948984 * v[53] + 0.0565685424949492 * v[29] + 0.1874 * y[570] + v[31]; + y[222] = 0.0565685424948984 * v[49] + 0.0565685424949492 * v[52] + 0.1874 * y[571] + v[46]; + y[224] = 0.0516187950265948 * v[50] + 0.0516187950266411 * v[42] + 0.2094 * y[569] + v[37]; + y[225] = 0.0516187950265948 * v[53] + 0.0516187950266411 * v[29] + 0.2094 * y[570] + v[31]; + y[226] = 0.0516187950265948 * v[49] + 0.0516187950266411 * v[52] + 0.2094 * y[571] + v[46]; + y[228] = -0.0565685424948984 * v[50] + -0.0565685424949492 * v[42] + 0.1874 * y[569] + v[37]; + y[229] = -0.0565685424948984 * v[53] + -0.0565685424949492 * v[29] + 0.1874 * y[570] + v[31]; + y[230] = -0.0565685424948984 * v[49] + -0.0565685424949492 * v[52] + 0.1874 * y[571] + v[46]; + y[232] = -0.0516187950265948 * v[50] + -0.0516187950266411 * v[42] + 0.2094 * y[569] + v[37]; + y[233] = -0.0516187950265948 * v[53] + -0.0516187950266411 * v[29] + 0.2094 * y[570] + v[31]; + y[234] = -0.0516187950265948 * v[49] + -0.0516187950266411 * v[52] + 0.2094 * y[571] + v[46]; + v[51] = sin(x[7]); + v[47] = -v[51]; + y[240] = -0.08 * v[47]; + v[45] = cos(x[7]); + y[241] = 0.2875 + -0.08 * v[45]; + y[244] = -0.03 * v[47]; + y[245] = 0.2875 + -0.03 * v[45]; + y[256] = 0.03 * v[47]; + y[257] = 0.2875 + 0.03 * v[45]; + y[260] = 0.08 * v[47]; + y[261] = 0.2875 + 0.08 * v[45]; + v[48] = sin(x[8]); + v[54] = -v[48]; + v[55] = cos(x[8]); + v[56] = 4.89663865010925e-12 * v[55]; + v[57] = v[45] * v[54] + v[47] * v[56]; + y[264] = -0.12 * v[57]; + v[56] = v[51] * v[54] + v[45] * v[56]; + y[265] = 0.2875 + -0.12 * v[56]; + v[54] = -1. * v[55]; + y[266] = 0.333 + -0.12 * v[54]; + y[268] = -0.17 * v[57]; + y[269] = 0.2875 + -0.17 * v[56]; + y[270] = 0.333 + -0.17 * v[54]; + v[58] = -1. * v[57] + 4.89663865010925e-12 * v[47]; + v[59] = -0.316 * v[57]; + y[272] = -0.1 * v[58] + v[59]; + v[60] = -1. * v[56] + 4.89663865010925e-12 * v[45]; + v[61] = 0.2875 + -0.316 * v[56]; + y[273] = -0.1 * v[60] + v[61]; + v[62] = 2.39770700697438e-23 + -1. * v[54]; + v[63] = 0.333 + -0.316 * v[54]; + y[274] = -0.1 * v[62] + v[63]; + y[276] = -0.06 * v[58] + v[59]; + y[277] = -0.06 * v[60] + v[61]; + y[278] = -0.06 * v[62] + v[63]; + v[64] = 4.89663865010925e-12 * v[48]; + v[65] = v[45] * v[55] + v[47] * v[64]; + v[66] = cos(x[9]); + v[67] = sin(x[9]); + v[68] = 4.89663865010925e-12 * v[67]; + v[69] = v[65] * v[66] + v[57] * v[68] + v[47] * v[67]; + v[70] = -v[67]; + v[71] = 4.89663865010925e-12 * v[66]; + v[65] = v[65] * v[70] + v[57] * v[71] + v[47] * v[66]; + y[280] = 0.08 * v[69] + 0.06 * v[65] + v[59]; + v[64] = v[51] * v[55] + v[45] * v[64]; + v[55] = v[64] * v[66] + v[56] * v[68] + v[45] * v[67]; + v[64] = v[64] * v[70] + v[56] * v[71] + v[45] * v[66]; + y[281] = 0.08 * v[55] + 0.06 * v[64] + v[61]; + v[48] = -1. * v[48]; + v[68] = v[48] * v[66] + v[54] * v[68] + 4.89663865010925e-12 * v[67]; + v[48] = v[48] * v[70] + v[54] * v[71] + 4.89663865010925e-12 * v[66]; + y[282] = 0.08 * v[68] + 0.06 * v[48] + v[63]; + y[284] = 0.08 * v[69] + 0.02 * v[65] + v[59]; + y[285] = 0.08 * v[55] + 0.02 * v[64] + v[61]; + y[286] = 0.08 * v[68] + 0.02 * v[48] + v[63]; + v[71] = cos(x[10]); + v[70] = sin(x[10]); + v[66] = 4.89663865010925e-12 * v[70]; + v[67] = v[69] * v[71] + v[65] * v[66] + v[58] * v[70]; + v[51] = -v[70]; + v[72] = 4.89663865010925e-12 * v[71]; + v[73] = v[69] * v[51] + v[65] * v[72] + v[58] * v[71]; + v[74] = v[59] + 0.0825 * v[69]; + y[288] = -0.08 * v[67] + 0.095 * v[73] + v[74]; + v[75] = v[55] * v[71] + v[64] * v[66] + v[60] * v[70]; + v[76] = v[55] * v[51] + v[64] * v[72] + v[60] * v[71]; + v[77] = v[61] + 0.0825 * v[55]; + y[289] = -0.08 * v[75] + 0.095 * v[76] + v[77]; + v[66] = v[68] * v[71] + v[48] * v[66] + v[62] * v[70]; + v[72] = v[68] * v[51] + v[48] * v[72] + v[62] * v[71]; + v[51] = v[63] + 0.0825 * v[68]; + y[290] = -0.08 * v[66] + 0.095 * v[72] + v[51]; + v[71] = -1. * v[65] + 4.89663865010925e-12 * v[58]; + y[292] = 0.02 * v[71] + v[74]; + v[70] = -1. * v[64] + 4.89663865010925e-12 * v[60]; + y[293] = 0.02 * v[70] + v[77]; + v[78] = -1. * v[48] + 4.89663865010925e-12 * v[62]; + y[294] = 0.02 * v[78] + v[51]; + y[296] = 0.06 * v[71] + v[74]; + y[297] = 0.06 * v[70] + v[77]; + y[298] = 0.06 * v[78] + v[51]; + y[300] = -0.08 * v[67] + 0.06 * v[73] + v[74]; + y[301] = -0.08 * v[75] + 0.06 * v[76] + v[77]; + y[302] = -0.08 * v[66] + 0.06 * v[72] + v[51]; + v[79] = sin(x[11]); + v[80] = -v[79]; + v[81] = cos(x[11]); + v[82] = 4.89663865010925e-12 * v[81]; + v[83] = -1. * v[81]; + v[84] = v[67] * v[80] + v[73] * v[82] + v[71] * v[83]; + y[352] = v[74] + -0.0825 * v[67] + 0.384 * v[73]; + y[304] = 0.055 * v[84] + y[352]; + v[85] = v[75] * v[80] + v[76] * v[82] + v[70] * v[83]; + y[353] = v[77] + -0.0825 * v[75] + 0.384 * v[76]; + y[305] = 0.055 * v[85] + y[353]; + v[83] = v[66] * v[80] + v[72] * v[82] + v[78] * v[83]; + y[354] = v[51] + -0.0825 * v[66] + 0.384 * v[72]; + y[306] = 0.055 * v[83] + y[354]; + y[308] = 0.075 * v[84] + y[352]; + y[309] = 0.075 * v[85] + y[353]; + y[310] = 0.075 * v[83] + y[354]; + v[82] = v[73] + 4.89663865010925e-12 * v[71]; + y[312] = -0.22 * v[82] + y[352]; + v[80] = v[76] + 4.89663865010925e-12 * v[70]; + y[313] = -0.22 * v[80] + y[353]; + v[86] = v[72] + 4.89663865010925e-12 * v[78]; + y[314] = -0.22 * v[86] + y[354]; + y[316] = 0.05 * v[84] + -0.18 * v[82] + y[352]; + y[317] = 0.05 * v[85] + -0.18 * v[80] + y[353]; + y[318] = 0.05 * v[83] + -0.18 * v[86] + y[354]; + v[87] = 4.89663865010925e-12 * v[79]; + v[79] = -1. * v[79]; + v[88] = v[67] * v[81] + v[73] * v[87] + v[71] * v[79]; + y[320] = 0.01 * v[88] + 0.08 * v[84] + -0.14 * v[82] + y[352]; + v[89] = v[75] * v[81] + v[76] * v[87] + v[70] * v[79]; + y[321] = 0.01 * v[89] + 0.08 * v[85] + -0.14 * v[80] + y[353]; + v[79] = v[66] * v[81] + v[72] * v[87] + v[78] * v[79]; + y[322] = 0.01 * v[79] + 0.08 * v[83] + -0.14 * v[86] + y[354]; + y[324] = 0.01 * v[88] + 0.085 * v[84] + -0.11 * v[82] + y[352]; + y[325] = 0.01 * v[89] + 0.085 * v[85] + -0.11 * v[80] + y[353]; + y[326] = 0.01 * v[79] + 0.085 * v[83] + -0.11 * v[86] + y[354]; + y[328] = 0.01 * v[88] + 0.09 * v[84] + -0.08 * v[82] + y[352]; + y[329] = 0.01 * v[89] + 0.09 * v[85] + -0.08 * v[80] + y[353]; + y[330] = 0.01 * v[79] + 0.09 * v[83] + -0.08 * v[86] + y[354]; + y[332] = 0.01 * v[88] + 0.095 * v[84] + -0.05 * v[82] + y[352]; + y[333] = 0.01 * v[89] + 0.095 * v[85] + -0.05 * v[80] + y[353]; + y[334] = 0.01 * v[79] + 0.095 * v[83] + -0.05 * v[86] + y[354]; + y[336] = -0.01 * v[88] + 0.08 * v[84] + -0.14 * v[82] + y[352]; + y[337] = -0.01 * v[89] + 0.08 * v[85] + -0.14 * v[80] + y[353]; + y[338] = -0.01 * v[79] + 0.08 * v[83] + -0.14 * v[86] + y[354]; + y[340] = -0.01 * v[88] + 0.085 * v[84] + -0.11 * v[82] + y[352]; + y[341] = -0.01 * v[89] + 0.085 * v[85] + -0.11 * v[80] + y[353]; + y[342] = -0.01 * v[79] + 0.085 * v[83] + -0.11 * v[86] + y[354]; + y[344] = -0.01 * v[88] + 0.09 * v[84] + -0.08 * v[82] + y[352]; + y[345] = -0.01 * v[89] + 0.09 * v[85] + -0.08 * v[80] + y[353]; + y[346] = -0.01 * v[79] + 0.09 * v[83] + -0.08 * v[86] + y[354]; + y[348] = -0.01 * v[88] + 0.095 * v[84] + -0.05 * v[82] + y[352]; + y[349] = -0.01 * v[89] + 0.095 * v[85] + -0.05 * v[80] + y[353]; + y[350] = -0.01 * v[79] + 0.095 * v[83] + -0.05 * v[86] + y[354]; + v[87] = cos(x[12]); + v[81] = sin(x[12]); + v[90] = 4.89663865010925e-12 * v[81]; + v[91] = v[88] * v[87] + v[84] * v[90] + v[82] * v[81]; + v[92] = -v[81]; + v[93] = 4.89663865010925e-12 * v[87]; + v[88] = v[88] * v[92] + v[84] * v[93] + v[82] * v[87]; + y[356] = 0.08 * v[91] + -0.01 * v[88] + y[352]; + v[94] = v[89] * v[87] + v[85] * v[90] + v[80] * v[81]; + v[89] = v[89] * v[92] + v[85] * v[93] + v[80] * v[87]; + y[357] = 0.08 * v[94] + -0.01 * v[89] + y[353]; + v[90] = v[79] * v[87] + v[83] * v[90] + v[86] * v[81]; + v[93] = v[79] * v[92] + v[83] * v[93] + v[86] * v[87]; + y[358] = 0.08 * v[90] + -0.01 * v[93] + y[354]; + y[360] = 0.08 * v[91] + 0.035 * v[88] + y[352]; + y[361] = 0.08 * v[94] + 0.035 * v[89] + y[353]; + y[362] = 0.08 * v[90] + 0.035 * v[93] + y[354]; + v[92] = -1. * v[84] + 4.89663865010925e-12 * v[82]; + y[581] = -1. * v[88] + 4.89663865010925e-12 * v[92]; + v[87] = y[352] + 0.088 * v[91]; + y[364] = 0.07 * y[581] + v[87]; + v[79] = -1. * v[85] + 4.89663865010925e-12 * v[80]; + y[582] = -1. * v[89] + 4.89663865010925e-12 * v[79]; + v[81] = y[353] + 0.088 * v[94]; + y[365] = 0.07 * y[582] + v[81]; + v[95] = -1. * v[83] + 4.89663865010925e-12 * v[86]; + y[583] = -1. * v[93] + 4.89663865010925e-12 * v[95]; + v[96] = y[354] + 0.088 * v[90]; + y[366] = 0.07 * y[583] + v[96]; + v[97] = cos(x[13]); + v[98] = sin(x[13]); + v[99] = 4.89663865010925e-12 * v[98]; + v[100] = v[91] * v[97] + v[88] * v[99] + v[92] * v[98]; + v[101] = -v[98]; + v[102] = 4.89663865010925e-12 * v[97]; + v[92] = v[91] * v[101] + v[88] * v[102] + v[92] * v[97]; + y[368] = 0.02 * v[100] + 0.04 * v[92] + 0.08 * y[581] + v[87]; + v[103] = v[94] * v[97] + v[89] * v[99] + v[79] * v[98]; + v[79] = v[94] * v[101] + v[89] * v[102] + v[79] * v[97]; + y[369] = 0.02 * v[103] + 0.04 * v[79] + 0.08 * y[582] + v[81]; + v[99] = v[90] * v[97] + v[93] * v[99] + v[95] * v[98]; + v[102] = v[90] * v[101] + v[93] * v[102] + v[95] * v[97]; + y[370] = 0.02 * v[99] + 0.04 * v[102] + 0.08 * y[583] + v[96]; + y[372] = 0.04 * v[100] + 0.02 * v[92] + 0.08 * y[581] + v[87]; + y[373] = 0.04 * v[103] + 0.02 * v[79] + 0.08 * y[582] + v[81]; + y[374] = 0.04 * v[99] + 0.02 * v[102] + 0.08 * y[583] + v[96]; + y[376] = 0.04 * v[100] + 0.06 * v[92] + 0.085 * y[581] + v[87]; + y[377] = 0.04 * v[103] + 0.06 * v[79] + 0.085 * y[582] + v[81]; + y[378] = 0.04 * v[99] + 0.06 * v[102] + 0.085 * y[583] + v[96]; + y[380] = 0.06 * v[100] + 0.04 * v[92] + 0.085 * y[581] + v[87]; + y[381] = 0.06 * v[103] + 0.04 * v[79] + 0.085 * y[582] + v[81]; + y[382] = 0.06 * v[99] + 0.04 * v[102] + 0.085 * y[583] + v[96]; + y[384] = -0.0530330085889673 * v[100] + -0.0530330085890148 * v[92] + 0.117 * y[581] + v[87]; + y[385] = -0.0530330085889673 * v[103] + -0.0530330085890148 * v[79] + 0.117 * y[582] + v[81]; + y[386] = -0.0530330085889673 * v[99] + -0.0530330085890148 * v[102] + 0.117 * y[583] + v[96]; + y[388] = -0.0318198051533804 * v[100] + -0.0318198051534089 * v[92] + 0.117 * y[581] + v[87]; + y[389] = -0.0318198051533804 * v[103] + -0.0318198051534089 * v[79] + 0.117 * y[582] + v[81]; + y[390] = -0.0318198051533804 * v[99] + -0.0318198051534089 * v[102] + 0.117 * y[583] + v[96]; + y[392] = -0.0106066017177935 * v[100] + -0.010606601717803 * v[92] + 0.117 * y[581] + v[87]; + y[393] = -0.0106066017177935 * v[103] + -0.010606601717803 * v[79] + 0.117 * y[582] + v[81]; + y[394] = -0.0106066017177935 * v[99] + -0.010606601717803 * v[102] + 0.117 * y[583] + v[96]; + y[396] = 0.0106066017177935 * v[100] + 0.010606601717803 * v[92] + 0.117 * y[581] + v[87]; + y[397] = 0.0106066017177935 * v[103] + 0.010606601717803 * v[79] + 0.117 * y[582] + v[81]; + y[398] = 0.0106066017177935 * v[99] + 0.010606601717803 * v[102] + 0.117 * y[583] + v[96]; + y[400] = 0.0318198051533804 * v[100] + 0.0318198051534089 * v[92] + 0.117 * y[581] + v[87]; + y[401] = 0.0318198051533804 * v[103] + 0.0318198051534089 * v[79] + 0.117 * y[582] + v[81]; + y[402] = 0.0318198051533804 * v[99] + 0.0318198051534089 * v[102] + 0.117 * y[583] + v[96]; + y[404] = 0.0530330085889673 * v[100] + 0.0530330085890148 * v[92] + 0.117 * y[581] + v[87]; + y[405] = 0.0530330085889673 * v[103] + 0.0530330085890148 * v[79] + 0.117 * y[582] + v[81]; + y[406] = 0.0530330085889673 * v[99] + 0.0530330085890148 * v[102] + 0.117 * y[583] + v[96]; + y[408] = -0.0530330085889673 * v[100] + -0.0530330085890148 * v[92] + 0.137 * y[581] + v[87]; + y[409] = -0.0530330085889673 * v[103] + -0.0530330085890148 * v[79] + 0.137 * y[582] + v[81]; + y[410] = -0.0530330085889673 * v[99] + -0.0530330085890148 * v[102] + 0.137 * y[583] + v[96]; + y[412] = -0.0318198051533804 * v[100] + -0.0318198051534089 * v[92] + 0.137 * y[581] + v[87]; + y[413] = -0.0318198051533804 * v[103] + -0.0318198051534089 * v[79] + 0.137 * y[582] + v[81]; + y[414] = -0.0318198051533804 * v[99] + -0.0318198051534089 * v[102] + 0.137 * y[583] + v[96]; + y[416] = -0.0106066017177935 * v[100] + -0.010606601717803 * v[92] + 0.137 * y[581] + v[87]; + y[417] = -0.0106066017177935 * v[103] + -0.010606601717803 * v[79] + 0.137 * y[582] + v[81]; + y[418] = -0.0106066017177935 * v[99] + -0.010606601717803 * v[102] + 0.137 * y[583] + v[96]; + y[420] = 0.0106066017177935 * v[100] + 0.010606601717803 * v[92] + 0.137 * y[581] + v[87]; + y[421] = 0.0106066017177935 * v[103] + 0.010606601717803 * v[79] + 0.137 * y[582] + v[81]; + y[422] = 0.0106066017177935 * v[99] + 0.010606601717803 * v[102] + 0.137 * y[583] + v[96]; + y[424] = 0.0318198051533804 * v[100] + 0.0318198051534089 * v[92] + 0.137 * y[581] + v[87]; + y[425] = 0.0318198051533804 * v[103] + 0.0318198051534089 * v[79] + 0.137 * y[582] + v[81]; + y[426] = 0.0318198051533804 * v[99] + 0.0318198051534089 * v[102] + 0.137 * y[583] + v[96]; + y[428] = 0.0530330085889673 * v[100] + 0.0530330085890148 * v[92] + 0.137 * y[581] + v[87]; + y[429] = 0.0530330085889673 * v[103] + 0.0530330085890148 * v[79] + 0.137 * y[582] + v[81]; + y[430] = 0.0530330085889673 * v[99] + 0.0530330085890148 * v[102] + 0.137 * y[583] + v[96]; + y[432] = -0.0530330085889673 * v[100] + -0.0530330085890148 * v[92] + 0.157 * y[581] + v[87]; + y[433] = -0.0530330085889673 * v[103] + -0.0530330085890148 * v[79] + 0.157 * y[582] + v[81]; + y[434] = -0.0530330085889673 * v[99] + -0.0530330085890148 * v[102] + 0.157 * y[583] + v[96]; + y[436] = -0.0318198051533804 * v[100] + -0.0318198051534089 * v[92] + 0.157 * y[581] + v[87]; + y[437] = -0.0318198051533804 * v[103] + -0.0318198051534089 * v[79] + 0.157 * y[582] + v[81]; + y[438] = -0.0318198051533804 * v[99] + -0.0318198051534089 * v[102] + 0.157 * y[583] + v[96]; + y[440] = -0.0106066017177935 * v[100] + -0.010606601717803 * v[92] + 0.157 * y[581] + v[87]; + y[441] = -0.0106066017177935 * v[103] + -0.010606601717803 * v[79] + 0.157 * y[582] + v[81]; + y[442] = -0.0106066017177935 * v[99] + -0.010606601717803 * v[102] + 0.157 * y[583] + v[96]; + y[444] = 0.0106066017177935 * v[100] + 0.010606601717803 * v[92] + 0.157 * y[581] + v[87]; + y[445] = 0.0106066017177935 * v[103] + 0.010606601717803 * v[79] + 0.157 * y[582] + v[81]; + y[446] = 0.0106066017177935 * v[99] + 0.010606601717803 * v[102] + 0.157 * y[583] + v[96]; + y[448] = 0.0318198051533804 * v[100] + 0.0318198051534089 * v[92] + 0.157 * y[581] + v[87]; + y[449] = 0.0318198051533804 * v[103] + 0.0318198051534089 * v[79] + 0.157 * y[582] + v[81]; + y[450] = 0.0318198051533804 * v[99] + 0.0318198051534089 * v[102] + 0.157 * y[583] + v[96]; + y[452] = 0.0530330085889673 * v[100] + 0.0530330085890148 * v[92] + 0.157 * y[581] + v[87]; + y[453] = 0.0530330085889673 * v[103] + 0.0530330085890148 * v[79] + 0.157 * y[582] + v[81]; + y[454] = 0.0530330085889673 * v[99] + 0.0530330085890148 * v[102] + 0.157 * y[583] + v[96]; + y[456] = 0.0565685424948984 * v[100] + 0.0565685424949492 * v[92] + 0.1874 * y[581] + v[87]; + y[457] = 0.0565685424948984 * v[103] + 0.0565685424949492 * v[79] + 0.1874 * y[582] + v[81]; + y[458] = 0.0565685424948984 * v[99] + 0.0565685424949492 * v[102] + 0.1874 * y[583] + v[96]; + y[460] = 0.0516187950265948 * v[100] + 0.0516187950266411 * v[92] + 0.2094 * y[581] + v[87]; + y[461] = 0.0516187950265948 * v[103] + 0.0516187950266411 * v[79] + 0.2094 * y[582] + v[81]; + y[462] = 0.0516187950265948 * v[99] + 0.0516187950266411 * v[102] + 0.2094 * y[583] + v[96]; + y[464] = -0.0565685424948984 * v[100] + -0.0565685424949492 * v[92] + 0.1874 * y[581] + v[87]; + y[465] = -0.0565685424948984 * v[103] + -0.0565685424949492 * v[79] + 0.1874 * y[582] + v[81]; + y[466] = -0.0565685424948984 * v[99] + -0.0565685424949492 * v[102] + 0.1874 * y[583] + v[96]; + y[468] = -0.0516187950265948 * v[100] + -0.0516187950266411 * v[92] + 0.2094 * y[581] + v[87]; + y[469] = -0.0516187950265948 * v[103] + -0.0516187950266411 * v[79] + 0.2094 * y[582] + v[81]; + y[470] = -0.0516187950265948 * v[99] + -0.0516187950266411 * v[102] + 0.2094 * y[583] + v[96]; + y[476] = -0.0399999991059303 * v[1]; + y[477] = -0.2875 + -0.0399999991059303 * v[2]; + y[480] = -0.0850000008940697 * v[7] + 0.0399999991059303 * v[1]; + y[481] = -0.2875 + -0.0850000008940697 * v[6] + 0.0399999991059303 * v[2]; + y[482] = 0.333 + 1.95865541626434e-13 + -0.0850000008940697 * v[4]; + y[484] = + 0.0385857857763767 * v[19] + 0.0289393402636051 * v[15] + -0.0517677664756775 * v[8] + v[9]; + y[485] = + 0.0385857857763767 * v[5] + 0.0289393402636051 * v[14] + -0.0517677664756775 * v[10] + v[11]; + y[486] = + 0.0385857857763767 * v[18] + 0.0289393402636051 * v[3] + -0.0517677664756775 * v[12] + v[13]; + y[488] = + -0.041449997574091 * v[17] + 0.0492218732833862 * v[23] + 0.0289125014096498 * v[21] + v[24]; + y[489] = + -0.041449997574091 * v[25] + 0.0492218732833862 * v[26] + 0.0289125014096498 * v[20] + v[27]; + y[490] = + -0.041449997574091 * v[16] + 0.0492218732833862 * v[22] + 0.0289125014096498 * v[28] + v[0]; + y[492] = 0.0375000014901161 * v[34] + -0.109999999403954 * v[32] + y[116]; + y[493] = 0.0375000014901161 * v[35] + -0.109999999403954 * v[30] + y[117]; + y[494] = 0.0375000014901161 * v[33] + -0.109999999403954 * v[36] + y[118]; + y[496] = 0.0424309633672237 * v[41] + 0.0144476993009448 * v[38] + y[116]; + y[497] = 0.0424309633672237 * v[44] + 0.0144476993009448 * v[39] + y[117]; + y[498] = 0.0424309633672237 * v[40] + 0.0144476993009448 * v[43] + y[118]; + y[500] = + 0.0153005504980683 * v[50] + 0.0153005504980683 * v[42] + 0.0745901614427567 * y[569] + v[37]; + y[501] = + 0.0153005504980683 * v[53] + 0.0153005504980683 * v[29] + 0.0745901614427567 * y[570] + v[31]; + y[502] = + 0.0153005504980683 * v[49] + 0.0153005504980683 * v[52] + 0.0745901614427567 * y[571] + v[46]; + y[504] = -5.20417042793042e-18 * v[50] + -2.16840434497101e-18 * v[42] + + 0.129201397299767 * y[569] + v[37]; + y[505] = -5.20417042793042e-18 * v[53] + -2.16840434497101e-18 * v[29] + + 0.129201397299767 * y[570] + v[31]; + y[506] = -5.20417042793042e-18 * v[49] + -2.16840434497101e-18 * v[52] + + 0.129201397299767 * y[571] + v[46]; + y[508] = + 0.0540936700999737 * v[50] + 0.0540936700999737 * v[42] + 0.198400005698204 * y[569] + v[37]; + y[509] = + 0.0540936700999737 * v[53] + 0.0540936700999737 * v[29] + 0.198400005698204 * y[570] + v[31]; + y[510] = + 0.0540936700999737 * v[49] + 0.0540936700999737 * v[52] + 0.198400005698204 * y[571] + v[46]; + y[512] = -0.0540936700999737 * v[50] + -0.0540936700999737 * v[42] + 0.198400005698204 * y[569] + + v[37]; + y[513] = -0.0540936700999737 * v[53] + -0.0540936700999737 * v[29] + 0.198400005698204 * y[570] + + v[31]; + y[514] = -0.0540936700999737 * v[49] + -0.0540936700999737 * v[52] + 0.198400005698204 * y[571] + + v[46]; + y[520] = -0.0399999991059303 * v[47]; + y[521] = 0.2875 + -0.0399999991059303 * v[45]; + y[524] = -0.0850000008940697 * v[57] + 0.0399999991059303 * v[47]; + y[525] = 0.2875 + -0.0850000008940697 * v[56] + 0.0399999991059303 * v[45]; + y[526] = 0.333 + 1.95865541626434e-13 + -0.0850000008940697 * v[54]; + y[528] = + 0.0385857857763767 * v[69] + 0.0289393402636051 * v[65] + -0.0517677664756775 * v[58] + v[59]; + y[529] = + 0.0385857857763767 * v[55] + 0.0289393402636051 * v[64] + -0.0517677664756775 * v[60] + v[61]; + y[530] = + 0.0385857857763767 * v[68] + 0.0289393402636051 * v[48] + -0.0517677664756775 * v[62] + v[63]; + y[532] = + -0.041449997574091 * v[67] + 0.0492218732833862 * v[73] + 0.0289125014096498 * v[71] + v[74]; + y[533] = + -0.041449997574091 * v[75] + 0.0492218732833862 * v[76] + 0.0289125014096498 * v[70] + v[77]; + y[534] = + -0.041449997574091 * v[66] + 0.0492218732833862 * v[72] + 0.0289125014096498 * v[78] + v[51]; + y[536] = 0.0375000014901161 * v[84] + -0.109999999403954 * v[82] + y[352]; + y[537] = 0.0375000014901161 * v[85] + -0.109999999403954 * v[80] + y[353]; + y[538] = 0.0375000014901161 * v[83] + -0.109999999403954 * v[86] + y[354]; + y[540] = 0.0424309633672237 * v[91] + 0.0144476993009448 * v[88] + y[352]; + y[541] = 0.0424309633672237 * v[94] + 0.0144476993009448 * v[89] + y[353]; + y[542] = 0.0424309633672237 * v[90] + 0.0144476993009448 * v[93] + y[354]; + y[544] = 0.0153005504980683 * v[100] + 0.0153005504980683 * v[92] + 0.0745901614427567 * y[581] + + v[87]; + y[545] = 0.0153005504980683 * v[103] + 0.0153005504980683 * v[79] + 0.0745901614427567 * y[582] + + v[81]; + y[546] = 0.0153005504980683 * v[99] + 0.0153005504980683 * v[102] + 0.0745901614427567 * y[583] + + v[96]; + y[548] = -5.20417042793042e-18 * v[100] + -2.16840434497101e-18 * v[92] + + 0.129201397299767 * y[581] + v[87]; + y[549] = -5.20417042793042e-18 * v[103] + -2.16840434497101e-18 * v[79] + + 0.129201397299767 * y[582] + v[81]; + y[550] = -5.20417042793042e-18 * v[99] + -2.16840434497101e-18 * v[102] + + 0.129201397299767 * y[583] + v[96]; + y[552] = + 0.0540936700999737 * v[100] + 0.0540936700999737 * v[92] + 0.198400005698204 * y[581] + v[87]; + y[553] = + 0.0540936700999737 * v[103] + 0.0540936700999737 * v[79] + 0.198400005698204 * y[582] + v[81]; + y[554] = + 0.0540936700999737 * v[99] + 0.0540936700999737 * v[102] + 0.198400005698204 * y[583] + v[96]; + y[556] = -0.0540936700999737 * v[100] + -0.0540936700999737 * v[92] + 0.198400005698204 * y[581] + + v[87]; + y[557] = -0.0540936700999737 * v[103] + -0.0540936700999737 * v[79] + 0.198400005698204 * y[582] + + v[81]; + y[558] = -0.0540936700999737 * v[99] + -0.0540936700999737 * v[102] + 0.198400005698204 * y[583] + + v[96]; + y[560] = v[37] + 0.212 * y[569]; + y[561] = v[31] + 0.212 * y[570]; + y[562] = v[46] + 0.212 * y[571]; + y[563] = 0.707106781186865 * v[50] + -0.70710678118623 * v[42]; + y[564] = 0.707106781186865 * v[53] + -0.70710678118623 * v[29]; + y[565] = 0.707106781186865 * v[49] + -0.70710678118623 * v[52]; + y[566] = 0.70710678118623 * v[50] + 0.707106781186865 * v[42]; + y[567] = 0.70710678118623 * v[53] + 0.707106781186865 * v[29]; + y[568] = 0.70710678118623 * v[49] + 0.707106781186865 * v[52]; + y[572] = v[87] + 0.212 * y[581]; + y[573] = v[81] + 0.212 * y[582]; + y[574] = v[96] + 0.212 * y[583]; + y[575] = 0.707106781186865 * v[100] + -0.70710678118623 * v[92]; + y[576] = 0.707106781186865 * v[103] + -0.70710678118623 * v[79]; + y[577] = 0.707106781186865 * v[99] + -0.70710678118623 * v[102]; + y[578] = 0.70710678118623 * v[100] + 0.707106781186865 * v[92]; + y[579] = 0.70710678118623 * v[103] + 0.707106781186865 * v[79]; + y[580] = 0.70710678118623 * v[99] + 0.707106781186865 * v[102]; + // dependent variables without operations + y[0] = 0.; + y[1] = -0.2875; + y[2] = 0.05; + y[3] = 0.0799999982118607; + y[6] = 0.333; + y[7] = 0.0599999986588955; + y[10] = 0.333; + y[11] = 0.0599999986588955; + y[12] = 0.; + y[13] = -0.2875; + y[14] = 0.213; + y[15] = 0.0599999986588955; + y[16] = 0.; + y[17] = -0.2875; + y[18] = 0.163; + y[19] = 0.0599999986588955; + y[22] = 0.333000000000147; + y[23] = 0.0599999986588955; + y[26] = 0.333000000000392; + y[27] = 0.0599999986588955; + y[31] = 0.0599999986588955; + y[35] = 0.0599999986588955; + y[39] = 0.0599999986588955; + y[43] = 0.0500000007450581; + y[47] = 0.0549999997019768; + y[51] = 0.0549999997019768; + y[55] = 0.0599999986588955; + y[59] = 0.0549999997019768; + y[63] = 0.0549999997019768; + y[67] = 0.0549999997019768; + y[71] = 0.0599999986588955; + y[75] = 0.0599999986588955; + y[79] = 0.0599999986588955; + y[83] = 0.0500000007450581; + y[87] = 0.025000000372529; + y[91] = 0.025000000372529; + y[95] = 0.025000000372529; + y[99] = 0.025000000372529; + y[103] = 0.025000000372529; + y[107] = 0.025000000372529; + y[111] = 0.025000000372529; + y[115] = 0.025000000372529; + y[119] = 0.0500000007450581; + y[123] = 0.0500000007450581; + y[127] = 0.0520000010728836; + y[131] = 0.0500000007450581; + y[135] = 0.025000000372529; + y[139] = 0.025000000372529; + y[143] = 0.0199999995529652; + y[147] = 0.0199999995529652; + y[151] = 0.0280000008642673; + y[155] = 0.0280000008642673; + y[159] = 0.0280000008642673; + y[163] = 0.0280000008642673; + y[167] = 0.0280000008642673; + y[171] = 0.0280000008642673; + y[175] = 0.0260000005364418; + y[179] = 0.0260000005364418; + y[183] = 0.0260000005364418; + y[187] = 0.0260000005364418; + y[191] = 0.0260000005364418; + y[195] = 0.0260000005364418; + y[199] = 0.0240000002086163; + y[203] = 0.0240000002086163; + y[207] = 0.0240000002086163; + y[211] = 0.0240000002086163; + y[215] = 0.0240000002086163; + y[219] = 0.0240000002086163; + y[223] = 0.0120000001043081; + y[227] = 0.0120000001043081; + y[231] = 0.0120000001043081; + y[235] = 0.0120000001043081; + y[236] = 0.; + y[237] = 0.2875; + y[238] = 0.05; + y[239] = 0.0799999982118607; + y[242] = 0.333; + y[243] = 0.0599999986588955; + y[246] = 0.333; + y[247] = 0.0599999986588955; + y[248] = 0.; + y[249] = 0.2875; + y[250] = 0.213; + y[251] = 0.0599999986588955; + y[252] = 0.; + y[253] = 0.2875; + y[254] = 0.163; + y[255] = 0.0599999986588955; + y[258] = 0.333000000000147; + y[259] = 0.0599999986588955; + y[262] = 0.333000000000392; + y[263] = 0.0599999986588955; + y[267] = 0.0599999986588955; + y[271] = 0.0599999986588955; + y[275] = 0.0599999986588955; + y[279] = 0.0500000007450581; + y[283] = 0.0549999997019768; + y[287] = 0.0549999997019768; + y[291] = 0.0599999986588955; + y[295] = 0.0549999997019768; + y[299] = 0.0549999997019768; + y[303] = 0.0549999997019768; + y[307] = 0.0599999986588955; + y[311] = 0.0599999986588955; + y[315] = 0.0599999986588955; + y[319] = 0.0500000007450581; + y[323] = 0.025000000372529; + y[327] = 0.025000000372529; + y[331] = 0.025000000372529; + y[335] = 0.025000000372529; + y[339] = 0.025000000372529; + y[343] = 0.025000000372529; + y[347] = 0.025000000372529; + y[351] = 0.025000000372529; + y[355] = 0.0500000007450581; + y[359] = 0.0500000007450581; + y[363] = 0.0520000010728836; + y[367] = 0.0500000007450581; + y[371] = 0.025000000372529; + y[375] = 0.025000000372529; + y[379] = 0.0199999995529652; + y[383] = 0.0199999995529652; + y[387] = 0.0280000008642673; + y[391] = 0.0280000008642673; + y[395] = 0.0280000008642673; + y[399] = 0.0280000008642673; + y[403] = 0.0280000008642673; + y[407] = 0.0280000008642673; + y[411] = 0.0260000005364418; + y[415] = 0.0260000005364418; + y[419] = 0.0260000005364418; + y[423] = 0.0260000005364418; + y[427] = 0.0260000005364418; + y[431] = 0.0260000005364418; + y[435] = 0.0240000002086163; + y[439] = 0.0240000002086163; + y[443] = 0.0240000002086163; + y[447] = 0.0240000002086163; + y[451] = 0.0240000002086163; + y[455] = 0.0240000002086163; + y[459] = 0.0120000001043081; + y[463] = 0.0120000001043081; + y[467] = 0.0120000001043081; + y[471] = 0.0120000001043081; + y[472] = 0.; + y[473] = -0.287499994039536; + y[474] = 0.0500000007450581; + y[475] = 0.0799999982118607; + y[478] = 0.24799999910593; + y[479] = 0.153941467404366; + y[483] = 0.153941467404366; + y[487] = 0.128210678696632; + y[491] = 0.126465573906898; + y[495] = 0.176216393709183; + y[499] = 0.0948232412338257; + y[503] = 0.0721197500824928; + y[507] = 0.103986009955406; + y[511] = 0.0235433969646692; + y[515] = 0.0235433969646692; + y[516] = 0.; + y[517] = 0.287499994039536; + y[518] = 0.0500000007450581; + y[519] = 0.0799999982118607; + y[522] = 0.24799999910593; + y[523] = 0.153941467404366; + y[527] = 0.153941467404366; + y[531] = 0.128210678696632; + y[535] = 0.126465573906898; + y[539] = 0.176216393709183; + y[543] = 0.0948232412338257; + y[547] = 0.0721197500824928; + y[551] = 0.103986009955406; + y[555] = 0.0235433969646692; + y[559] = 0.0235433969646692; + + // + // environment vs. robot collisions + // + + // right_panda_rightfinger + if (sphere_environment_in_collision(environment, y[556], y[557], y[558], y[559])) + { + if (sphere_environment_in_collision(environment, y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_leftfinger + if (sphere_environment_in_collision(environment, y[552], y[553], y[554], y[555])) + { + if (sphere_environment_in_collision(environment, y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_hand + if (sphere_environment_in_collision(environment, y[548], y[549], y[550], y[551])) + { + if (sphere_environment_in_collision(environment, y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link7 + if (sphere_environment_in_collision(environment, y[544], y[545], y[546], y[547])) + { + if (sphere_environment_in_collision(environment, y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link6 + if (sphere_environment_in_collision(environment, y[540], y[541], y[542], y[543])) + { + if (sphere_environment_in_collision(environment, y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link5 + if (sphere_environment_in_collision(environment, y[536], y[537], y[538], y[539])) + { + if (sphere_environment_in_collision(environment, y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link4 + if (sphere_environment_in_collision(environment, y[532], y[533], y[534], y[535])) + { + if (sphere_environment_in_collision(environment, y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link3 + if (sphere_environment_in_collision(environment, y[528], y[529], y[530], y[531])) + { + if (sphere_environment_in_collision(environment, y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link2 + if (sphere_environment_in_collision(environment, y[524], y[525], y[526], y[527])) + { + if (sphere_environment_in_collision(environment, y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link1 + if (sphere_environment_in_collision(environment, y[520], y[521], y[522], y[523])) + { + if (sphere_environment_in_collision(environment, y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // right_panda_link0 + if (sphere_environment_in_collision(environment, y[516], y[517], y[518], y[519])) + { + if (sphere_environment_in_collision(environment, y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_rightfinger + if (sphere_environment_in_collision(environment, y[512], y[513], y[514], y[515])) + { + if (sphere_environment_in_collision(environment, y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_leftfinger + if (sphere_environment_in_collision(environment, y[508], y[509], y[510], y[511])) + { + if (sphere_environment_in_collision(environment, y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_hand + if (sphere_environment_in_collision(environment, y[504], y[505], y[506], y[507])) + { + if (sphere_environment_in_collision(environment, y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link7 + if (sphere_environment_in_collision(environment, y[500], y[501], y[502], y[503])) + { + if (sphere_environment_in_collision(environment, y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link6 + if (sphere_environment_in_collision(environment, y[496], y[497], y[498], y[499])) + { + if (sphere_environment_in_collision(environment, y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[124], y[125], y[126], y[127])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link5 + if (sphere_environment_in_collision(environment, y[492], y[493], y[494], y[495])) + { + if (sphere_environment_in_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link4 + if (sphere_environment_in_collision(environment, y[488], y[489], y[490], y[491])) + { + if (sphere_environment_in_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link3 + if (sphere_environment_in_collision(environment, y[484], y[485], y[486], y[487])) + { + if (sphere_environment_in_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link2 + if (sphere_environment_in_collision(environment, y[480], y[481], y[482], y[483])) + { + if (sphere_environment_in_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link1 + if (sphere_environment_in_collision(environment, y[476], y[477], y[478], y[479])) + { + if (sphere_environment_in_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // left_panda_link0 + if (sphere_environment_in_collision(environment, y[472], y[473], y[474], y[475])) + { + if (sphere_environment_in_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + } + + // + // robot self-collisions + // + + // left_panda_link0 vs. left_panda_link5 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[492], y[493], y[494], y[495])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_link6 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[496], y[497], y[498], y[499])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link0 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link0 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[472], y[473], y[474], y[475], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_link5 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[492], y[493], y[494], y[495])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_link6 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[496], y[497], y[498], y[499])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link1 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link1 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[476], y[477], y[478], y[479], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_link5 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[492], y[493], y[494], y[495])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link2 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link2 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[480], y[481], y[482], y[483], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link3 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[484], y[485], y[486], y[487], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link4 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[488], y[489], y[490], y[491], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_link7 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[500], y[501], y[502], y[503])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_hand + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[504], y[505], y[506], y[507])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_leftfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[508], y[509], y[510], y[511])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // left_panda_link5 vs. left_panda_rightfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[512], y[513], y[514], y[515])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link5 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[492], y[493], y[494], y[495], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[88], y[89], y[90], y[91], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[92], y[93], y[94], y[95], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[96], y[97], y[98], y[99], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[100], y[101], y[102], y[103], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[104], y[105], y[106], y[107], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[108], y[109], y[110], y[111], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[112], y[113], y[114], y[115], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link6 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[496], y[497], y[498], y[499], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[116], y[117], y[118], y[119], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[120], y[121], y[122], y[123], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[124], y[125], y[126], y[127], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_link7 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[500], y[501], y[502], y[503], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[128], y[129], y[130], y[131], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[132], y[133], y[134], y[135], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[136], y[137], y[138], y[139], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[140], y[141], y[142], y[143], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[144], y[145], y[146], y[147], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_hand + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_hand vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[504], y[505], y[506], y[507], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[148], y[149], y[150], y[151], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[152], y[153], y[154], y[155], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[156], y[157], y[158], y[159], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[160], y[161], y[162], y[163], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[164], y[165], y[166], y[167], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[168], y[169], y[170], y[171], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[172], y[173], y[174], y[175], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[176], y[177], y[178], y[179], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[180], y[181], y[182], y[183], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[184], y[185], y[186], y[187], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[188], y[189], y[190], y[191], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[192], y[193], y[194], y[195], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[196], y[197], y[198], y[199], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[200], y[201], y[202], y[203], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[204], y[205], y[206], y[207], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[208], y[209], y[210], y[211], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[212], y[213], y[214], y[215], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[216], y[217], y[218], y[219], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_hand + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_leftfinger vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[508], y[509], y[510], y[511], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link0 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[516], y[517], y[518], y[519])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link1 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[520], y[521], y[522], y[523])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link2 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[524], y[525], y[526], y[527])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link3 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[528], y[529], y[530], y[531])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link4 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[532], y[533], y[534], y[535])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_hand + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // left_panda_rightfinger vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[512], y[513], y[514], y[515], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[232], y[233], y[234], y[235], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link0 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[516], y[517], y[518], y[519], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[236], y[237], y[238], y[239], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_link6 + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[540], y[541], y[542], y[543])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[360], y[361], y[362], y[363])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[352], y[353], y[354], y[355])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[356], y[357], y[358], y[359])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link1 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[520], y[521], y[522], y[523], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[244], y[245], y[246], y[247], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[248], y[249], y[250], y[251], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[252], y[253], y[254], y[255], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_link5 + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[536], y[537], y[538], y[539])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[348], y[349], y[350], y[351])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[316], y[317], y[318], y[319])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[320], y[321], y[322], y[323])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[324], y[325], y[326], y[327])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[328], y[329], y[330], y[331])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[332], y[333], y[334], y[335])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[336], y[337], y[338], y[339])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[340], y[341], y[342], y[343])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[344], y[345], y[346], y[347])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link2 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[524], y[525], y[526], y[527], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[256], y[257], y[258], y[259], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[260], y[261], y[262], y[263], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[264], y[265], y[266], y[267], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[268], y[269], y[270], y[271], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_link7 + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[544], y[545], y[546], y[547])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[380], y[381], y[382], y[383])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[364], y[365], y[366], y[367])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[368], y[369], y[370], y[371])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[372], y[373], y[374], y[375])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[376], y[377], y[378], y[379])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_hand + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[548], y[549], y[550], y[551])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[452], y[453], y[454], y[455])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[384], y[385], y[386], y[387])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[388], y[389], y[390], y[391])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[392], y[393], y[394], y[395])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[396], y[397], y[398], y[399])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[400], y[401], y[402], y[403])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[404], y[405], y[406], y[407])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[408], y[409], y[410], y[411])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[412], y[413], y[414], y[415])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[416], y[417], y[418], y[419])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[420], y[421], y[422], y[423])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[424], y[425], y[426], y[427])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[428], y[429], y[430], y[431])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[432], y[433], y[434], y[435])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[436], y[437], y[438], y[439])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[440], y[441], y[442], y[443])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[444], y[445], y[446], y[447])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[448], y[449], y[450], y[451])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_leftfinger + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[552], y[553], y[554], y[555])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[460], y[461], y[462], y[463])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[456], y[457], y[458], y[459])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // right_panda_link5 vs. right_panda_rightfinger + if (sphere_sphere_self_collision( + y[536], y[537], y[538], y[539], y[556], y[557], y[558], y[559])) + { + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[304], y[305], y[306], y[307], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[308], y[309], y[310], y[311], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[312], y[313], y[314], y[315], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[332], y[333], y[334], y[335], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[336], y[337], y[338], y[339], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[340], y[341], y[342], y[343], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[344], y[345], y[346], y[347], y[468], y[469], y[470], y[471])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[464], y[465], y[466], y[467])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[348], y[349], y[350], y[351], y[468], y[469], y[470], y[471])) + { + return false; + } + } + + // attaching at ["left_panda_grasptarget","right_panda_grasptarget"] + // provide the eef pose of all end effectors. + set_attachment_pose(environment, to_isometries<2>(&y[560])); + + // + // attachment vs. environment collisions + // + if (attachment_environment_collision(environment)) + { + return false; + } + + // + // attachment vs. robot collisions + // + + // Attachment vs. left_panda_link0 + if (attachment_sphere_collision(environment, y[472], y[473], y[474], y[475])) + { + if (attachment_sphere_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + } + + // Attachment vs. left_panda_link1 + if (attachment_sphere_collision(environment, y[476], y[477], y[478], y[479])) + { + if (attachment_sphere_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + } + + // Attachment vs. left_panda_link2 + if (attachment_sphere_collision(environment, y[480], y[481], y[482], y[483])) + { + if (attachment_sphere_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + } + + // Attachment vs. left_panda_link3 + if (attachment_sphere_collision(environment, y[484], y[485], y[486], y[487])) + { + if (attachment_sphere_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + } + + // Attachment vs. left_panda_link4 + if (attachment_sphere_collision(environment, y[488], y[489], y[490], y[491])) + { + if (attachment_sphere_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + } + + // Attachment vs. left_panda_link5 + if (attachment_sphere_collision(environment, y[492], y[493], y[494], y[495])) + { + if (attachment_sphere_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[88], y[89], y[90], y[91])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[92], y[93], y[94], y[95])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[96], y[97], y[98], y[99])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[100], y[101], y[102], y[103])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[104], y[105], y[106], y[107])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[108], y[109], y[110], y[111])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[112], y[113], y[114], y[115])) + { + return false; + } + } + + // Attachment vs. left_panda_link6 + if (attachment_sphere_collision(environment, y[496], y[497], y[498], y[499])) + { + if (attachment_sphere_collision(environment, y[116], y[117], y[118], y[119])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[120], y[121], y[122], y[123])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[124], y[125], y[126], y[127])) + { + return false; + } + } + + // Attachment vs. left_panda_link7 + if (attachment_sphere_collision(environment, y[500], y[501], y[502], y[503])) + { + if (attachment_sphere_collision(environment, y[128], y[129], y[130], y[131])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[132], y[133], y[134], y[135])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[136], y[137], y[138], y[139])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[140], y[141], y[142], y[143])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[144], y[145], y[146], y[147])) + { + return false; + } + } + + // Attachment vs. left_panda_hand + if (attachment_sphere_collision(environment, y[504], y[505], y[506], y[507])) + { + if (attachment_sphere_collision(environment, y[148], y[149], y[150], y[151])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[152], y[153], y[154], y[155])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[156], y[157], y[158], y[159])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[160], y[161], y[162], y[163])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[164], y[165], y[166], y[167])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[168], y[169], y[170], y[171])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[172], y[173], y[174], y[175])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[176], y[177], y[178], y[179])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[180], y[181], y[182], y[183])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[184], y[185], y[186], y[187])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[188], y[189], y[190], y[191])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[192], y[193], y[194], y[195])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[196], y[197], y[198], y[199])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[200], y[201], y[202], y[203])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[204], y[205], y[206], y[207])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[208], y[209], y[210], y[211])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[212], y[213], y[214], y[215])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // Attachment vs. left_panda_leftfinger + if (attachment_sphere_collision(environment, y[508], y[509], y[510], y[511])) + { + if (attachment_sphere_collision(environment, y[220], y[221], y[222], y[223])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[224], y[225], y[226], y[227])) + { + return false; + } + } + + // Attachment vs. left_panda_rightfinger + if (attachment_sphere_collision(environment, y[512], y[513], y[514], y[515])) + { + if (attachment_sphere_collision(environment, y[228], y[229], y[230], y[231])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // Attachment vs. right_panda_link0 + if (attachment_sphere_collision(environment, y[516], y[517], y[518], y[519])) + { + if (attachment_sphere_collision(environment, y[236], y[237], y[238], y[239])) + { + return false; + } + } + + // Attachment vs. right_panda_link1 + if (attachment_sphere_collision(environment, y[520], y[521], y[522], y[523])) + { + if (attachment_sphere_collision(environment, y[240], y[241], y[242], y[243])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[244], y[245], y[246], y[247])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[248], y[249], y[250], y[251])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[252], y[253], y[254], y[255])) + { + return false; + } + } + + // Attachment vs. right_panda_link2 + if (attachment_sphere_collision(environment, y[524], y[525], y[526], y[527])) + { + if (attachment_sphere_collision(environment, y[256], y[257], y[258], y[259])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[260], y[261], y[262], y[263])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[264], y[265], y[266], y[267])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[268], y[269], y[270], y[271])) + { + return false; + } + } + + // Attachment vs. right_panda_link3 + if (attachment_sphere_collision(environment, y[528], y[529], y[530], y[531])) + { + if (attachment_sphere_collision(environment, y[272], y[273], y[274], y[275])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[276], y[277], y[278], y[279])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[280], y[281], y[282], y[283])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[284], y[285], y[286], y[287])) + { + return false; + } + } + + // Attachment vs. right_panda_link4 + if (attachment_sphere_collision(environment, y[532], y[533], y[534], y[535])) + { + if (attachment_sphere_collision(environment, y[288], y[289], y[290], y[291])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[292], y[293], y[294], y[295])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[296], y[297], y[298], y[299])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[300], y[301], y[302], y[303])) + { + return false; + } + } + + // Attachment vs. right_panda_link5 + if (attachment_sphere_collision(environment, y[536], y[537], y[538], y[539])) + { + if (attachment_sphere_collision(environment, y[304], y[305], y[306], y[307])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[308], y[309], y[310], y[311])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[312], y[313], y[314], y[315])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[316], y[317], y[318], y[319])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[320], y[321], y[322], y[323])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[324], y[325], y[326], y[327])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[328], y[329], y[330], y[331])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[332], y[333], y[334], y[335])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[336], y[337], y[338], y[339])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[340], y[341], y[342], y[343])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[344], y[345], y[346], y[347])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[348], y[349], y[350], y[351])) + { + return false; + } + } + + // Attachment vs. right_panda_link6 + if (attachment_sphere_collision(environment, y[540], y[541], y[542], y[543])) + { + if (attachment_sphere_collision(environment, y[352], y[353], y[354], y[355])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[356], y[357], y[358], y[359])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[360], y[361], y[362], y[363])) + { + return false; + } + } + + // Attachment vs. right_panda_link7 + if (attachment_sphere_collision(environment, y[544], y[545], y[546], y[547])) + { + if (attachment_sphere_collision(environment, y[364], y[365], y[366], y[367])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[368], y[369], y[370], y[371])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[372], y[373], y[374], y[375])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[376], y[377], y[378], y[379])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[380], y[381], y[382], y[383])) + { + return false; + } + } + + // Attachment vs. right_panda_hand + if (attachment_sphere_collision(environment, y[548], y[549], y[550], y[551])) + { + if (attachment_sphere_collision(environment, y[384], y[385], y[386], y[387])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[388], y[389], y[390], y[391])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[392], y[393], y[394], y[395])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[396], y[397], y[398], y[399])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[400], y[401], y[402], y[403])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[404], y[405], y[406], y[407])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[408], y[409], y[410], y[411])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[412], y[413], y[414], y[415])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[416], y[417], y[418], y[419])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[420], y[421], y[422], y[423])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[424], y[425], y[426], y[427])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[428], y[429], y[430], y[431])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[432], y[433], y[434], y[435])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[436], y[437], y[438], y[439])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[440], y[441], y[442], y[443])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[444], y[445], y[446], y[447])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[448], y[449], y[450], y[451])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[452], y[453], y[454], y[455])) + { + return false; + } + } + + // Attachment vs. right_panda_leftfinger + if (attachment_sphere_collision(environment, y[552], y[553], y[554], y[555])) + { + if (attachment_sphere_collision(environment, y[456], y[457], y[458], y[459])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[460], y[461], y[462], y[463])) + { + return false; + } + } + + // Attachment vs. right_panda_rightfinger + if (attachment_sphere_collision(environment, y[556], y[557], y[558], y[559])) + { + if (attachment_sphere_collision(environment, y[464], y[465], y[466], y[467])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[468], y[469], y[470], y[471])) + { + return false; + } + } + + return true; + } + + inline static auto eefk(const std::array &x) noexcept -> std::array + { + std::array v; + std::array y; + + v[0] = cos(x[0]); + v[1] = sin(x[1]); + v[2] = -v[1]; + v[3] = sin(x[0]); + v[4] = -v[3]; + v[5] = cos(x[1]); + v[6] = 4.89663865010925e-12 * v[5]; + v[7] = v[0] * v[2] + v[4] * v[6]; + v[8] = 4.89663865010925e-12 * v[1]; + v[9] = v[0] * v[5] + v[4] * v[8]; + v[10] = cos(x[2]); + v[11] = sin(x[2]); + v[12] = 4.89663865010925e-12 * v[11]; + v[13] = v[9] * v[10] + v[7] * v[12] + v[4] * v[11]; + v[14] = cos(x[3]); + v[15] = -v[11]; + v[16] = 4.89663865010925e-12 * v[10]; + v[9] = v[9] * v[15] + v[7] * v[16] + v[4] * v[10]; + v[17] = sin(x[3]); + v[18] = 4.89663865010925e-12 * v[17]; + v[4] = -1. * v[7] + 4.89663865010925e-12 * v[4]; + v[19] = v[13] * v[14] + v[9] * v[18] + v[4] * v[17]; + v[20] = -v[17]; + v[21] = 4.89663865010925e-12 * v[14]; + v[22] = v[13] * v[20] + v[9] * v[21] + v[4] * v[14]; + v[23] = cos(x[4]); + v[24] = sin(x[4]); + v[25] = 4.89663865010925e-12 * v[24]; + v[4] = -1. * v[9] + 4.89663865010925e-12 * v[4]; + v[9] = -1. * v[24]; + v[26] = v[19] * v[23] + v[22] * v[25] + v[4] * v[9]; + v[27] = cos(x[5]); + v[24] = -v[24]; + v[28] = 4.89663865010925e-12 * v[23]; + v[29] = -1. * v[23]; + v[30] = v[19] * v[24] + v[22] * v[28] + v[4] * v[29]; + v[31] = sin(x[5]); + v[32] = 4.89663865010925e-12 * v[31]; + v[4] = v[22] + 4.89663865010925e-12 * v[4]; + v[33] = v[26] * v[27] + v[30] * v[32] + v[4] * v[31]; + v[34] = -v[31]; + v[35] = 4.89663865010925e-12 * v[27]; + v[26] = v[26] * v[34] + v[30] * v[35] + v[4] * v[27]; + v[4] = -1. * v[30] + 4.89663865010925e-12 * v[4]; + y[9] = -1. * v[26] + 4.89663865010925e-12 * v[4]; + y[0] = -0.316 * v[7] + 0.0825 * v[13] + -0.0825 * v[19] + 0.384 * v[22] + 0.088 * v[33] + + 0.212 * y[9]; + v[6] = v[3] * v[2] + v[0] * v[6]; + v[8] = v[3] * v[5] + v[0] * v[8]; + v[3] = v[8] * v[10] + v[6] * v[12] + v[0] * v[11]; + v[8] = v[8] * v[15] + v[6] * v[16] + v[0] * v[10]; + v[0] = -1. * v[6] + 4.89663865010925e-12 * v[0]; + v[2] = v[3] * v[14] + v[8] * v[18] + v[0] * v[17]; + v[22] = v[3] * v[20] + v[8] * v[21] + v[0] * v[14]; + v[0] = -1. * v[8] + 4.89663865010925e-12 * v[0]; + v[8] = v[2] * v[23] + v[22] * v[25] + v[0] * v[9]; + v[19] = v[2] * v[24] + v[22] * v[28] + v[0] * v[29]; + v[0] = v[22] + 4.89663865010925e-12 * v[0]; + v[13] = v[8] * v[27] + v[19] * v[32] + v[0] * v[31]; + v[8] = v[8] * v[34] + v[19] * v[35] + v[0] * v[27]; + v[0] = -1. * v[19] + 4.89663865010925e-12 * v[0]; + y[10] = -1. * v[8] + 4.89663865010925e-12 * v[0]; + y[1] = -0.2875 + -0.316 * v[6] + 0.0825 * v[3] + -0.0825 * v[2] + 0.384 * v[22] + 0.088 * v[13] + + 0.212 * y[10]; + v[5] = -1. * v[5]; + v[1] = -1. * v[1]; + v[12] = v[1] * v[10] + v[5] * v[12] + 4.89663865010925e-12 * v[11]; + v[1] = v[1] * v[15] + v[5] * v[16] + 4.89663865010925e-12 * v[10]; + v[16] = 2.39770700697438e-23 + -1. * v[5]; + v[18] = v[12] * v[14] + v[1] * v[18] + v[16] * v[17]; + v[21] = v[12] * v[20] + v[1] * v[21] + v[16] * v[14]; + v[16] = -1. * v[1] + 4.89663865010925e-12 * v[16]; + v[9] = v[18] * v[23] + v[21] * v[25] + v[16] * v[9]; + v[29] = v[18] * v[24] + v[21] * v[28] + v[16] * v[29]; + v[16] = v[21] + 4.89663865010925e-12 * v[16]; + v[32] = v[9] * v[27] + v[29] * v[32] + v[16] * v[31]; + v[9] = v[9] * v[34] + v[29] * v[35] + v[16] * v[27]; + v[16] = -1. * v[29] + 4.89663865010925e-12 * v[16]; + y[11] = -1. * v[9] + 4.89663865010925e-12 * v[16]; + y[2] = 0.333 + -0.316 * v[5] + 0.0825 * v[12] + -0.0825 * v[18] + 0.384 * v[21] + 0.088 * v[32] + + 0.212 * y[11]; + v[21] = cos(x[6]); + v[18] = sin(x[6]); + v[12] = 4.89663865010925e-12 * v[18]; + v[5] = v[33] * v[21] + v[26] * v[12] + v[4] * v[18]; + v[29] = -v[18]; + v[35] = 4.89663865010925e-12 * v[21]; + v[4] = v[33] * v[29] + v[26] * v[35] + v[4] * v[21]; + y[3] = 0.707106781186865 * v[5] + -0.70710678118623 * v[4]; + v[26] = v[13] * v[21] + v[8] * v[12] + v[0] * v[18]; + v[0] = v[13] * v[29] + v[8] * v[35] + v[0] * v[21]; + y[4] = 0.707106781186865 * v[26] + -0.70710678118623 * v[0]; + v[12] = v[32] * v[21] + v[9] * v[12] + v[16] * v[18]; + v[35] = v[32] * v[29] + v[9] * v[35] + v[16] * v[21]; + y[5] = 0.707106781186865 * v[12] + -0.70710678118623 * v[35]; + y[6] = 0.70710678118623 * v[5] + 0.707106781186865 * v[4]; + y[7] = 0.70710678118623 * v[26] + 0.707106781186865 * v[0]; + y[8] = 0.70710678118623 * v[12] + 0.707106781186865 * v[35]; + v[35] = cos(x[7]); + v[12] = sin(x[8]); + v[0] = -v[12]; + v[26] = sin(x[7]); + v[4] = -v[26]; + v[5] = cos(x[8]); + v[29] = 4.89663865010925e-12 * v[5]; + v[21] = v[35] * v[0] + v[4] * v[29]; + v[16] = 4.89663865010925e-12 * v[12]; + v[9] = v[35] * v[5] + v[4] * v[16]; + v[32] = cos(x[9]); + v[18] = sin(x[9]); + v[8] = 4.89663865010925e-12 * v[18]; + v[13] = v[9] * v[32] + v[21] * v[8] + v[4] * v[18]; + v[33] = cos(x[10]); + v[34] = -v[18]; + v[27] = 4.89663865010925e-12 * v[32]; + v[9] = v[9] * v[34] + v[21] * v[27] + v[4] * v[32]; + v[31] = sin(x[10]); + v[28] = 4.89663865010925e-12 * v[31]; + v[4] = -1. * v[21] + 4.89663865010925e-12 * v[4]; + v[24] = v[13] * v[33] + v[9] * v[28] + v[4] * v[31]; + v[25] = -v[31]; + v[23] = 4.89663865010925e-12 * v[33]; + v[1] = v[13] * v[25] + v[9] * v[23] + v[4] * v[33]; + v[20] = cos(x[11]); + v[14] = sin(x[11]); + v[17] = 4.89663865010925e-12 * v[14]; + v[4] = -1. * v[9] + 4.89663865010925e-12 * v[4]; + v[9] = -1. * v[14]; + v[15] = v[24] * v[20] + v[1] * v[17] + v[4] * v[9]; + v[10] = cos(x[12]); + v[14] = -v[14]; + v[11] = 4.89663865010925e-12 * v[20]; + v[22] = -1. * v[20]; + v[2] = v[24] * v[14] + v[1] * v[11] + v[4] * v[22]; + v[3] = sin(x[12]); + v[6] = 4.89663865010925e-12 * v[3]; + v[4] = v[1] + 4.89663865010925e-12 * v[4]; + v[19] = v[15] * v[10] + v[2] * v[6] + v[4] * v[3]; + v[7] = -v[3]; + v[30] = 4.89663865010925e-12 * v[10]; + v[15] = v[15] * v[7] + v[2] * v[30] + v[4] * v[10]; + v[4] = -1. * v[2] + 4.89663865010925e-12 * v[4]; + y[21] = -1. * v[15] + 4.89663865010925e-12 * v[4]; + y[12] = -0.316 * v[21] + 0.0825 * v[13] + -0.0825 * v[24] + 0.384 * v[1] + 0.088 * v[19] + + 0.212 * y[21]; + v[29] = v[26] * v[0] + v[35] * v[29]; + v[16] = v[26] * v[5] + v[35] * v[16]; + v[26] = v[16] * v[32] + v[29] * v[8] + v[35] * v[18]; + v[16] = v[16] * v[34] + v[29] * v[27] + v[35] * v[32]; + v[35] = -1. * v[29] + 4.89663865010925e-12 * v[35]; + v[0] = v[26] * v[33] + v[16] * v[28] + v[35] * v[31]; + v[1] = v[26] * v[25] + v[16] * v[23] + v[35] * v[33]; + v[35] = -1. * v[16] + 4.89663865010925e-12 * v[35]; + v[16] = v[0] * v[20] + v[1] * v[17] + v[35] * v[9]; + v[24] = v[0] * v[14] + v[1] * v[11] + v[35] * v[22]; + v[35] = v[1] + 4.89663865010925e-12 * v[35]; + v[13] = v[16] * v[10] + v[24] * v[6] + v[35] * v[3]; + v[16] = v[16] * v[7] + v[24] * v[30] + v[35] * v[10]; + v[35] = -1. * v[24] + 4.89663865010925e-12 * v[35]; + y[22] = -1. * v[16] + 4.89663865010925e-12 * v[35]; + y[13] = 0.2875 + -0.316 * v[29] + 0.0825 * v[26] + -0.0825 * v[0] + 0.384 * v[1] + 0.088 * v[13] + + 0.212 * y[22]; + v[5] = -1. * v[5]; + v[12] = -1. * v[12]; + v[8] = v[12] * v[32] + v[5] * v[8] + 4.89663865010925e-12 * v[18]; + v[12] = v[12] * v[34] + v[5] * v[27] + 4.89663865010925e-12 * v[32]; + v[27] = 2.39770700697438e-23 + -1. * v[5]; + v[28] = v[8] * v[33] + v[12] * v[28] + v[27] * v[31]; + v[23] = v[8] * v[25] + v[12] * v[23] + v[27] * v[33]; + v[27] = -1. * v[12] + 4.89663865010925e-12 * v[27]; + v[9] = v[28] * v[20] + v[23] * v[17] + v[27] * v[9]; + v[22] = v[28] * v[14] + v[23] * v[11] + v[27] * v[22]; + v[27] = v[23] + 4.89663865010925e-12 * v[27]; + v[6] = v[9] * v[10] + v[22] * v[6] + v[27] * v[3]; + v[9] = v[9] * v[7] + v[22] * v[30] + v[27] * v[10]; + v[27] = -1. * v[22] + 4.89663865010925e-12 * v[27]; + y[23] = -1. * v[9] + 4.89663865010925e-12 * v[27]; + y[14] = 0.333 + -0.316 * v[5] + 0.0825 * v[8] + -0.0825 * v[28] + 0.384 * v[23] + 0.088 * v[6] + + 0.212 * y[23]; + v[23] = cos(x[13]); + v[28] = sin(x[13]); + v[8] = 4.89663865010925e-12 * v[28]; + v[5] = v[19] * v[23] + v[15] * v[8] + v[4] * v[28]; + v[22] = -v[28]; + v[30] = 4.89663865010925e-12 * v[23]; + v[4] = v[19] * v[22] + v[15] * v[30] + v[4] * v[23]; + y[15] = 0.707106781186865 * v[5] + -0.70710678118623 * v[4]; + v[15] = v[13] * v[23] + v[16] * v[8] + v[35] * v[28]; + v[35] = v[13] * v[22] + v[16] * v[30] + v[35] * v[23]; + y[16] = 0.707106781186865 * v[15] + -0.70710678118623 * v[35]; + v[8] = v[6] * v[23] + v[9] * v[8] + v[27] * v[28]; + v[30] = v[6] * v[22] + v[9] * v[30] + v[27] * v[23]; + y[17] = 0.707106781186865 * v[8] + -0.70710678118623 * v[30]; + y[18] = 0.70710678118623 * v[5] + 0.707106781186865 * v[4]; + y[19] = 0.70710678118623 * v[15] + 0.707106781186865 * v[35]; + y[20] = 0.70710678118623 * v[8] + 0.707106781186865 * v[30]; + + return to_isometries<2>(y.data()); + } + }; +} // namespace vamp::robots + +// NOLINTEND(*-magic-numbers) diff --git a/src/impl/vamp/robots/fetch.hh b/src/impl/vamp/robots/fetch.hh index b7c4eb98..dcada0a7 100644 --- a/src/impl/vamp/robots/fetch.hh +++ b/src/impl/vamp/robots/fetch.hh @@ -26,7 +26,7 @@ namespace vamp::robots "forearm_roll_joint", "wrist_flex_joint", "wrist_roll_joint"}; - static constexpr char *end_effector = "gripper_link"; + static constexpr std::array end_effectors = {"gripper_link"}; using Configuration = FloatVector; using ConfigurationArray = std::array; @@ -1318,349 +1318,263 @@ namespace vamp::robots output.first.emplace_back( sphere_environment_get_collisions(environment, y[96], y[97], y[98], y[99])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[100], y[101], y[102], y[103])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[100], y[101], y[102], y[103])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[104], y[105], y[106], y[107])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[104], y[105], y[106], y[107])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[108], y[109], y[110], y[111])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[108], y[109], y[110], y[111])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[112], y[113], y[114], y[115])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[112], y[113], y[114], y[115])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[116], y[117], y[118], y[119])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[116], y[117], y[118], y[119])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[120], y[121], y[122], y[123])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[120], y[121], y[122], y[123])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[124], y[125], y[126], y[127])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[124], y[125], y[126], y[127])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[128], y[129], y[130], y[131])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[128], y[129], y[130], y[131])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[132], y[133], y[134], y[135])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[132], y[133], y[134], y[135])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[136], y[137], y[138], y[139])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[136], y[137], y[138], y[139])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[140], y[141], y[142], y[143])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[140], y[141], y[142], y[143])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[144], y[145], y[146], y[147])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[144], y[145], y[146], y[147])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[148], y[149], y[150], y[151])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[148], y[149], y[150], y[151])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[152], y[153], y[154], y[155])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[152], y[153], y[154], y[155])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[156], y[157], y[158], y[159])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[156], y[157], y[158], y[159])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[160], y[161], y[162], y[163])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[160], y[161], y[162], y[163])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[164], y[165], y[166], y[167])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[164], y[165], y[166], y[167])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[168], y[169], y[170], y[171])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[168], y[169], y[170], y[171])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[172], y[173], y[174], y[175])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[172], y[173], y[174], y[175])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[176], y[177], y[178], y[179])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[176], y[177], y[178], y[179])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[180], y[181], y[182], y[183])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[180], y[181], y[182], y[183])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[184], y[185], y[186], y[187])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[184], y[185], y[186], y[187])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[188], y[189], y[190], y[191])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[188], y[189], y[190], y[191])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[192], y[193], y[194], y[195])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[192], y[193], y[194], y[195])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[196], y[197], y[198], y[199])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[196], y[197], y[198], y[199])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[200], y[201], y[202], y[203])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[200], y[201], y[202], y[203])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[204], y[205], y[206], y[207])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[204], y[205], y[206], y[207])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[208], y[209], y[210], y[211])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[208], y[209], y[210], y[211])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[212], y[213], y[214], y[215])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[212], y[213], y[214], y[215])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[216], y[217], y[218], y[219])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[216], y[217], y[218], y[219])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[220], y[221], y[222], y[223])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[220], y[221], y[222], y[223])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[224], y[225], y[226], y[227])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[224], y[225], y[226], y[227])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[228], y[229], y[230], y[231])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[228], y[229], y[230], y[231])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[232], y[233], y[234], y[235])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[232], y[233], y[234], y[235])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[236], y[237], y[238], y[239])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[236], y[237], y[238], y[239])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[240], y[241], y[242], y[243])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[240], y[241], y[242], y[243])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[244], y[245], y[246], y[247])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[244], y[245], y[246], y[247])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[248], y[249], y[250], y[251])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[248], y[249], y[250], y[251])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[252], y[253], y[254], y[255])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[252], y[253], y[254], y[255])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[256], y[257], y[258], y[259])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[256], y[257], y[258], y[259])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[260], y[261], y[262], y[263])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[260], y[261], y[262], y[263])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[264], y[265], y[266], y[267])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[264], y[265], y[266], y[267])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[268], y[269], y[270], y[271])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[268], y[269], y[270], y[271])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[272], y[273], y[274], y[275])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[272], y[273], y[274], y[275])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[276], y[277], y[278], y[279])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[276], y[277], y[278], y[279])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[280], y[281], y[282], y[283])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[280], y[281], y[282], y[283])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[284], y[285], y[286], y[287])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[284], y[285], y[286], y[287])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[288], y[289], y[290], y[291])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[288], y[289], y[290], y[291])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[292], y[293], y[294], y[295])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[292], y[293], y[294], y[295])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[296], y[297], y[298], y[299])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[296], y[297], y[298], y[299])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[300], y[301], y[302], y[303])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[300], y[301], y[302], y[303])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[304], y[305], y[306], y[307])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[304], y[305], y[306], y[307])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[308], y[309], y[310], y[311])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[308], y[309], y[310], y[311])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[312], y[313], y[314], y[315])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[312], y[313], y[314], y[315])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[316], y[317], y[318], y[319])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[316], y[317], y[318], y[319])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[320], y[321], y[322], y[323])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[320], y[321], y[322], y[323])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[324], y[325], y[326], y[327])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[324], y[325], y[326], y[327])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[328], y[329], y[330], y[331])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[328], y[329], y[330], y[331])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[332], y[333], y[334], y[335])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[332], y[333], y[334], y[335])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[336], y[337], y[338], y[339])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[336], y[337], y[338], y[339])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[340], y[341], y[342], y[343])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[340], y[341], y[342], y[343])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[344], y[345], y[346], y[347])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[344], y[345], y[346], y[347])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[348], y[349], y[350], y[351])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[348], y[349], y[350], y[351])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[352], y[353], y[354], y[355])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[352], y[353], y[354], y[355])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[356], y[357], y[358], y[359])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[356], y[357], y[358], y[359])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[360], y[361], y[362], y[363])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[360], y[361], y[362], y[363])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[364], y[365], y[366], y[367])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[364], y[365], y[366], y[367])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[368], y[369], y[370], y[371])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[368], y[369], y[370], y[371])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[372], y[373], y[374], y[375])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[372], y[373], y[374], y[375])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[376], y[377], y[378], y[379])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[376], y[377], y[378], y[379])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[380], y[381], y[382], y[383])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[380], y[381], y[382], y[383])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[384], y[385], y[386], y[387])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[384], y[385], y[386], y[387])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[388], y[389], y[390], y[391])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[388], y[389], y[390], y[391])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[392], y[393], y[394], y[395])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[392], y[393], y[394], y[395])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[396], y[397], y[398], y[399])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[396], y[397], y[398], y[399])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[400], y[401], y[402], y[403])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[400], y[401], y[402], y[403])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[404], y[405], y[406], y[407])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[404], y[405], y[406], y[407])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[408], y[409], y[410], y[411])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[408], y[409], y[410], y[411])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[412], y[413], y[414], y[415])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[412], y[413], y[414], y[415])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[416], y[417], y[418], y[419])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[416], y[417], y[418], y[419])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[420], y[421], y[422], y[423])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[420], y[421], y[422], y[423])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[424], y[425], y[426], y[427])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[424], y[425], y[426], y[427])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[428], y[429], y[430], y[431])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[428], y[429], y[430], y[431])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[432], y[433], y[434], y[435])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[432], y[433], y[434], y[435])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[436], y[437], y[438], y[439])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[436], y[437], y[438], y[439])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[440], y[441], y[442], y[443])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[440], y[441], y[442], y[443])); if (sphere_sphere_self_collision( y[0], y[1], y[2], y[3], y[292], y[293], y[294], y[295])) @@ -51243,8 +51157,9 @@ namespace vamp::robots } } - // attaching at gripper_link - set_attachment_pose(environment, to_isometry(&y[504])); + // attaching at ["gripper_link"] + // provide the eef pose of all end effectors. + set_attachment_pose(environment, to_isometries<1>(&y[504])); // // attachment vs. environment collisions @@ -51619,7 +51534,7 @@ namespace vamp::robots return true; } - inline static auto eefk(const std::array &x) noexcept -> Eigen::Isometry3f + inline static auto eefk(const std::array &x) noexcept -> std::array { std::array v; std::array y; @@ -51686,7 +51601,7 @@ namespace vamp::robots y[10] = v[7] * v[14] + v[0] * v[9]; y[11] = v[10] * v[14] + v[16] * v[9]; - return to_isometry(y.data()); + return to_isometries<1>(y.data()); } }; } // namespace vamp::robots diff --git a/src/impl/vamp/robots/fr3.hh b/src/impl/vamp/robots/fr3.hh new file mode 100644 index 00000000..69f6da3a --- /dev/null +++ b/src/impl/vamp/robots/fr3.hh @@ -0,0 +1,13360 @@ +#pragma once + +#include +#include +#include +#include + +// NOLINTBEGIN(*-magic-numbers) +namespace vamp::robots +{ + struct FR3 + { + static constexpr char *name = "fr3"; + static constexpr std::size_t dimension = 9; + static constexpr std::size_t n_spheres = 55; + static constexpr float min_radius = 0.004290000069886446; + static constexpr float max_radius = 0.11785700172185898; + static constexpr std::size_t resolution = 32; + + static constexpr std::array joint_names = { + "fr3_joint1", + "fr3_joint2", + "fr3_joint3", + "fr3_joint4", + "fr3_joint5", + "fr3_joint6", + "fr3_joint7", + "fr3_finger_joint1", + "fr3_finger_joint2"}; + static constexpr std::array end_effectors = {"fr3_hand_tcp"}; + + using Configuration = FloatVector; + using ConfigurationArray = std::array; + + struct alignas(FloatVectorAlignment) ConfigurationBuffer + : std::array + { + }; + + template + using ConfigurationBlock = FloatVector; + + template + struct Spheres + { + FloatVector x; + FloatVector y; + FloatVector z; + FloatVector r; + }; + + alignas(Configuration::S::Alignment) static constexpr std::array s_m{ + 5.487400054931641, + 3.5673999786376953, + 5.801400184631348, + 2.8903000354766846, + 5.61299991607666, + 3.972399950027466, + 6.031799793243408, + 0.03999999910593033, + 0.03999999910593033}; + + alignas(Configuration::S::Alignment) static constexpr std::array s_a{ + -2.7437000274658203, + -1.7836999893188477, + -2.900700092315674, + -3.042099952697754, + -2.80649995803833, + 0.5444999933242798, + -3.015899896621704, + 0.0, + 0.0}; + + alignas(Configuration::S::Alignment) static constexpr std::array d_m{ + 0.18223567306995392, + 0.28031620383262634, + 0.17237219214439392, + 0.3459848463535309, + 0.17815785109996796, + 0.25173699855804443, + 0.16578799486160278, + 25.0, + 25.0}; + + inline static void scale_configuration(Configuration &q) noexcept + { + q = q * Configuration(s_m) + Configuration(s_a); + } + + inline static void descale_configuration(Configuration &q) noexcept + { + q = (q - Configuration(s_a)) * Configuration(d_m); + } + + template + inline static void scale_configuration_block(ConfigurationBlock &q) noexcept + { + q[0] = -2.7437000274658203 + (q[0] * 5.487400054931641); + q[1] = -1.7836999893188477 + (q[1] * 3.5673999786376953); + q[2] = -2.900700092315674 + (q[2] * 5.801400184631348); + q[3] = -3.042099952697754 + (q[3] * 2.8903000354766846); + q[4] = -2.80649995803833 + (q[4] * 5.61299991607666); + q[5] = 0.5444999933242798 + (q[5] * 3.972399950027466); + q[6] = -3.015899896621704 + (q[6] * 6.031799793243408); + q[7] = 0.0 + (q[7] * 0.03999999910593033); + q[8] = 0.0 + (q[8] * 0.03999999910593033); + } + + template + inline static void descale_configuration_block(ConfigurationBlock &q) noexcept + { + q[0] = 0.18223567306995392 * (q[0] - -2.7437000274658203); + q[1] = 0.28031620383262634 * (q[1] - -1.7836999893188477); + q[2] = 0.17237219214439392 * (q[2] - -2.900700092315674); + q[3] = 0.3459848463535309 * (q[3] - -3.042099952697754); + q[4] = 0.17815785109996796 * (q[4] - -2.80649995803833); + q[5] = 0.25173699855804443 * (q[5] - 0.5444999933242798); + q[6] = 0.16578799486160278 * (q[6] - -3.015899896621704); + q[7] = 25.0 * (q[7] - 0.0); + q[8] = 25.0 * (q[8] - 0.0); + } + + inline static auto space_measure() noexcept -> float + { + return 70.6332340346053; + } + + template + inline static void sphere_fk(const ConfigurationBlock &x, Spheres &out) noexcept + { + std::array, 22> v; + std::array, 220> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -v[1]; + y[8] = 0.000257275745272636 * v[0] + 0.000364961584091189 * v[2]; + y[9] = 0.000257275745272636 * v[1] + 0.000364961584091189 * v[0]; + y[12] = -0.000222724254727364 * v[0] + -0.0542900384159088 * v[2]; + y[13] = -0.000222724254727364 * v[1] + -0.0542900384159088 * v[0]; + y[16] = 0.00218527574527264 * v[0] + -0.0323670384159088 * v[2]; + y[17] = 0.00218527574527264 * v[1] + -0.0323670384159088 * v[0]; + v[3] = cos(x[1]); + v[4] = sin(x[1]); + v[5] = -4.44089209850063e-16 * v[4]; + v[6] = v[0] * v[3] + v[2] * v[5]; + v[7] = -v[4]; + v[8] = -4.44089209850063e-16 * v[3]; + v[9] = v[0] * v[7] + v[2] * v[8]; + y[20] = -0.000270674825549126 * v[6] + 0.00107043164694309 * v[9] + 0.0537209802794456 * v[2]; + v[5] = v[1] * v[3] + v[0] * v[5]; + v[8] = v[1] * v[7] + v[0] * v[8]; + y[21] = -0.000270674825549126 * v[5] + 0.00107043164694309 * v[8] + 0.0537209802794456 * v[0]; + v[4] = -1. * v[4]; + v[3] = -1. * v[3]; + y[22] = 0.333 + -0.000270674825549126 * v[4] + -2.38569076846698e-17 + 0.00107043164694309 * v[3]; + y[24] = -8.36748255491256e-05 * v[6] + -0.140628568353057 * v[9] + 8.99802794456506e-05 * v[2]; + y[25] = -8.36748255491256e-05 * v[5] + -0.140628568353057 * v[8] + 8.99802794456506e-05 * v[0]; + y[26] = 0.333 + -8.36748255491256e-05 * v[4] + -3.99592712011068e-20 + -0.140628568353057 * v[3]; + y[28] = 0.000396325174450874 * v[6] + -0.0708775683530569 * v[9] + 0.0343639802794456 * v[2]; + y[29] = 0.000396325174450874 * v[5] + -0.0708775683530569 * v[8] + 0.0343639802794456 * v[0]; + y[30] = 0.333 + 0.000396325174450874 * v[4] + -1.52606728496022e-17 + -0.0708775683530569 * v[3]; + v[7] = cos(x[2]); + v[1] = sin(x[2]); + v[10] = -4.44089209850063e-16 * v[1]; + v[11] = v[6] * v[7] + v[9] * v[10] + v[2] * v[1]; + v[12] = -v[1]; + v[13] = -4.44089209850063e-16 * v[7]; + v[6] = v[6] * v[12] + v[9] * v[13] + v[2] * v[7]; + v[2] = -1. * v[9] + -4.44089209850063e-16 * v[2]; + v[9] = -0.316 * v[9]; + y[32] = + 0.0824602061868906 * v[11] + 0.051286252776742 * v[6] + -0.00220886971879006 * v[2] + v[9]; + v[14] = v[5] * v[7] + v[8] * v[10] + v[0] * v[1]; + v[5] = v[5] * v[12] + v[8] * v[13] + v[0] * v[7]; + v[0] = -1. * v[8] + -4.44089209850063e-16 * v[0]; + v[8] = -0.316 * v[8]; + y[33] = + 0.0824602061868906 * v[14] + 0.051286252776742 * v[5] + -0.00220886971879006 * v[0] + v[8]; + v[10] = v[4] * v[7] + v[3] * v[10] + -4.44089209850063e-16 * v[1]; + v[13] = v[4] * v[12] + v[3] * v[13] + -4.44089209850063e-16 * v[7]; + v[12] = 1.97215226305253e-31 + -1. * v[3]; + v[3] = 0.333 + -0.316 * v[3]; + y[34] = + 0.0824602061868906 * v[10] + 0.051286252776742 * v[13] + -0.00220886971879006 * v[12] + v[3]; + y[36] = -0.000216793813109399 * v[11] + 0.000107252776741982 * v[6] + -0.0731218697187901 * v[2] + + v[9]; + y[37] = -0.000216793813109399 * v[14] + 0.000107252776741982 * v[5] + -0.0731218697187901 * v[0] + + v[8]; + y[38] = -0.000216793813109399 * v[10] + 0.000107252776741982 * v[13] + + -0.0731218697187901 * v[12] + v[3]; + y[40] = 0.0557052061868906 * v[11] + 0.037208252776742 * v[6] + -0.0243828697187901 * v[2] + v[9]; + y[41] = 0.0557052061868906 * v[14] + 0.037208252776742 * v[5] + -0.0243828697187901 * v[0] + v[8]; + y[42] = + 0.0557052061868906 * v[10] + 0.037208252776742 * v[13] + -0.0243828697187901 * v[12] + v[3]; + v[7] = cos(x[3]); + v[4] = sin(x[3]); + v[1] = -4.44089209850063e-16 * v[4]; + v[15] = v[11] * v[7] + v[6] * v[1] + v[2] * v[4]; + v[16] = -v[4]; + v[17] = -4.44089209850063e-16 * v[7]; + v[18] = v[11] * v[16] + v[6] * v[17] + v[2] * v[7]; + v[2] = -1. * v[6] + -4.44089209850063e-16 * v[2]; + v[9] = v[9] + 0.0825 * v[11]; + y[44] = + -0.0823836891956329 * v[15] + 0.0737984290605783 * v[18] + -2.6764888167382e-05 * v[2] + v[9]; + v[11] = v[14] * v[7] + v[5] * v[1] + v[0] * v[4]; + v[6] = v[14] * v[16] + v[5] * v[17] + v[0] * v[7]; + v[0] = -1. * v[5] + -4.44089209850063e-16 * v[0]; + v[8] = v[8] + 0.0825 * v[14]; + y[45] = + -0.0823836891956329 * v[11] + 0.0737984290605783 * v[6] + -2.6764888167382e-05 * v[0] + v[8]; + v[1] = v[10] * v[7] + v[13] * v[1] + v[12] * v[4]; + v[17] = v[10] * v[16] + v[13] * v[17] + v[12] * v[7]; + v[12] = -1. * v[13] + -4.44089209850063e-16 * v[12]; + v[3] = v[3] + 0.0825 * v[10]; + y[46] = + -0.0823836891956329 * v[1] + 0.0737984290605783 * v[17] + -2.6764888167382e-05 * v[12] + v[3]; + y[48] = 0.000159310804367069 * v[15] + -7.85709394216516e-05 * v[18] + 0.0512292351118326 * v[2] + + v[9]; + y[49] = 0.000159310804367069 * v[11] + -7.85709394216516e-05 * v[6] + 0.0512292351118326 * v[0] + + v[8]; + y[50] = 0.000159310804367069 * v[1] + -7.85709394216516e-05 * v[17] + 0.0512292351118326 * v[12] + + v[3]; + y[52] = + -0.0387426891956329 * v[15] + 0.0291004290605783 * v[18] + 0.0302542351118326 * v[2] + v[9]; + y[53] = + -0.0387426891956329 * v[11] + 0.0291004290605783 * v[6] + 0.0302542351118326 * v[0] + v[8]; + y[54] = + -0.0387426891956329 * v[1] + 0.0291004290605783 * v[17] + 0.0302542351118326 * v[12] + v[3]; + v[10] = cos(x[4]); + v[13] = sin(x[4]); + v[16] = -4.44089209850063e-16 * v[13]; + v[7] = -1. * v[13]; + v[4] = v[15] * v[10] + v[18] * v[16] + v[2] * v[7]; + v[13] = -v[13]; + v[14] = -4.44089209850063e-16 * v[10]; + v[5] = -1. * v[10]; + v[19] = v[15] * v[13] + v[18] * v[14] + v[2] * v[5]; + v[2] = v[18] + -4.44089209850063e-16 * v[2]; + v[9] = v[9] + -0.0825 * v[15] + 0.384 * v[18]; + y[56] = -0.000434186588168144 * v[4] + 0.066180057600975 * v[19] + -0.000121777759432798 * v[2] + + v[9]; + v[18] = v[11] * v[10] + v[6] * v[16] + v[0] * v[7]; + v[15] = v[11] * v[13] + v[6] * v[14] + v[0] * v[5]; + v[0] = v[6] + -4.44089209850063e-16 * v[0]; + v[8] = v[8] + -0.0825 * v[11] + 0.384 * v[6]; + y[57] = -0.000434186588168144 * v[18] + 0.066180057600975 * v[15] + -0.000121777759432798 * v[0] + + v[8]; + v[7] = v[1] * v[10] + v[17] * v[16] + v[12] * v[7]; + v[5] = v[1] * v[13] + v[17] * v[14] + v[12] * v[5]; + v[12] = v[17] + -4.44089209850063e-16 * v[12]; + v[3] = v[3] + -0.0825 * v[1] + 0.384 * v[17]; + y[58] = -0.000434186588168144 * v[7] + 0.066180057600975 * v[5] + -0.000121777759432798 * v[12] + + v[3]; + y[60] = + 0.000235813411831856 * v[4] + 0.088863057600975 * v[19] + -0.0383667777594328 * v[2] + v[9]; + y[61] = + 0.000235813411831856 * v[18] + 0.088863057600975 * v[15] + -0.0383667777594328 * v[0] + v[8]; + y[62] = + 0.000235813411831856 * v[7] + 0.088863057600975 * v[5] + -0.0383667777594328 * v[12] + v[3]; + y[64] = + -2.21865881681442e-05 * v[4] + 0.090490057600975 * v[19] + -0.0906467777594328 * v[2] + v[9]; + y[65] = + -2.21865881681442e-05 * v[18] + 0.090490057600975 * v[15] + -0.0906467777594328 * v[0] + v[8]; + y[66] = + -2.21865881681442e-05 * v[7] + 0.090490057600975 * v[5] + -0.0906467777594328 * v[12] + v[3]; + y[68] = + -0.00225518658816814 * v[4] + 0.082432057600975 * v[19] + -0.129776777759433 * v[2] + v[9]; + y[69] = + -0.00225518658816814 * v[18] + 0.082432057600975 * v[15] + -0.129776777759433 * v[0] + v[8]; + y[70] = + -0.00225518658816814 * v[7] + 0.082432057600975 * v[5] + -0.129776777759433 * v[12] + v[3]; + y[72] = 0.00197281341183186 * v[4] + 0.056373057600975 * v[19] + -0.183438777759433 * v[2] + v[9]; + y[73] = + 0.00197281341183186 * v[18] + 0.056373057600975 * v[15] + -0.183438777759433 * v[0] + v[8]; + y[74] = 0.00197281341183186 * v[7] + 0.056373057600975 * v[5] + -0.183438777759433 * v[12] + v[3]; + y[76] = + -0.00659618658816814 * v[4] + 0.016208057600975 * v[19] + -0.214312777759433 * v[2] + v[9]; + y[77] = + -0.00659618658816814 * v[18] + 0.016208057600975 * v[15] + -0.214312777759433 * v[0] + v[8]; + y[78] = + -0.00659618658816814 * v[7] + 0.016208057600975 * v[5] + -0.214312777759433 * v[12] + v[3]; + y[80] = + 0.0130218134118319 * v[4] + -0.00144994239902496 * v[19] + -0.219200777759433 * v[2] + v[9]; + y[81] = + 0.0130218134118319 * v[18] + -0.00144994239902496 * v[15] + -0.219200777759433 * v[0] + v[8]; + y[82] = + 0.0130218134118319 * v[7] + -0.00144994239902496 * v[5] + -0.219200777759433 * v[12] + v[3]; + y[84] = + -0.00891518658816814 * v[4] + -0.00937694239902497 * v[19] + -0.221168777759433 * v[2] + v[9]; + y[85] = -0.00891518658816814 * v[18] + -0.00937694239902497 * v[15] + -0.221168777759433 * v[0] + + v[8]; + y[86] = + -0.00891518658816814 * v[7] + -0.00937694239902497 * v[5] + -0.221168777759433 * v[12] + v[3]; + v[17] = cos(x[5]); + v[1] = sin(x[5]); + v[14] = -4.44089209850063e-16 * v[1]; + v[13] = v[4] * v[17] + v[19] * v[14] + v[2] * v[1]; + v[16] = -v[1]; + v[10] = -4.44089209850063e-16 * v[17]; + v[4] = v[4] * v[16] + v[19] * v[10] + v[2] * v[17]; + v[2] = -1. * v[19] + -4.44089209850063e-16 * v[2]; + y[88] = + 0.0885216327220502 * v[13] + 0.0116328354930215 * v[4] + -0.00106414643673269 * v[2] + v[9]; + v[19] = v[18] * v[17] + v[15] * v[14] + v[0] * v[1]; + v[18] = v[18] * v[16] + v[15] * v[10] + v[0] * v[17]; + v[0] = -1. * v[15] + -4.44089209850063e-16 * v[0]; + y[89] = + 0.0885216327220502 * v[19] + 0.0116328354930215 * v[18] + -0.00106414643673269 * v[0] + v[8]; + v[14] = v[7] * v[17] + v[5] * v[14] + v[12] * v[1]; + v[10] = v[7] * v[16] + v[5] * v[10] + v[12] * v[17]; + v[12] = -1. * v[5] + -4.44089209850063e-16 * v[12]; + y[90] = + 0.0885216327220502 * v[14] + 0.0116328354930215 * v[10] + -0.00106414643673269 * v[12] + v[3]; + y[92] = 0.0119076327220502 * v[13] + 0.0110828354930215 * v[4] + 0.0174398535632673 * v[2] + v[9]; + y[93] = + 0.0119076327220502 * v[19] + 0.0110828354930215 * v[18] + 0.0174398535632673 * v[0] + v[8]; + y[94] = + 0.0119076327220502 * v[14] + 0.0110828354930215 * v[10] + 0.0174398535632673 * v[12] + v[3]; + v[5] = cos(x[6]); + v[16] = sin(x[6]); + v[17] = -4.44089209850063e-16 * v[16]; + v[7] = v[13] * v[5] + v[4] * v[17] + v[2] * v[16]; + v[1] = -v[16]; + v[15] = -4.44089209850063e-16 * v[5]; + v[6] = v[13] * v[1] + v[4] * v[15] + v[2] * v[5]; + v[2] = -1. * v[4] + -4.44089209850063e-16 * v[2]; + v[13] = v[9] + 0.088 * v[13]; + y[96] = 0.000103343574285507 * v[7] + -0.000882708185553551 * v[6] + 0.0776681043272018 * v[2] + + v[13]; + v[9] = v[19] * v[5] + v[18] * v[17] + v[0] * v[16]; + v[4] = v[19] * v[1] + v[18] * v[15] + v[0] * v[5]; + v[0] = -1. * v[18] + -4.44089209850063e-16 * v[0]; + v[19] = v[8] + 0.088 * v[19]; + y[97] = 0.000103343574285507 * v[9] + -0.000882708185553551 * v[4] + 0.0776681043272018 * v[0] + + v[19]; + v[17] = v[14] * v[5] + v[10] * v[17] + v[12] * v[16]; + v[15] = v[14] * v[1] + v[10] * v[15] + v[12] * v[5]; + v[12] = -1. * v[10] + -4.44089209850063e-16 * v[12]; + v[14] = v[3] + 0.088 * v[14]; + y[98] = 0.000103343574285507 * v[17] + -0.000882708185553551 * v[15] + + 0.0776681043272018 * v[12] + v[14]; + y[100] = + 0.0398483435742855 * v[7] + 0.0399532918144464 * v[6] + 0.0790931043272018 * v[2] + v[13]; + y[101] = + 0.0398483435742855 * v[9] + 0.0399532918144464 * v[4] + 0.0790931043272018 * v[0] + v[19]; + y[102] = + 0.0398483435742855 * v[17] + 0.0399532918144464 * v[15] + 0.0790931043272018 * v[12] + v[14]; + y[104] = 0.0526858266329919 * v[7] + 0.0525558145818925 * v[6] + 0.134520674433231 * v[2] + v[13]; + y[105] = 0.0526858266329919 * v[9] + 0.0525558145818925 * v[4] + 0.134520674433231 * v[0] + v[19]; + y[106] = + 0.0526858266329919 * v[17] + 0.0525558145818925 * v[15] + 0.134520674433231 * v[12] + v[14]; + y[108] = 0.0239122374929489 * v[7] + 0.0238755635369661 * v[6] + 0.130450674433231 * v[2] + v[13]; + y[109] = 0.0239122374929489 * v[9] + 0.0238755635369661 * v[4] + 0.130450674433231 * v[0] + v[19]; + y[110] = + 0.0239122374929489 * v[17] + 0.0238755635369661 * v[15] + 0.130450674433231 * v[12] + v[14]; + y[112] = + -0.00481963234700404 * v[7] + -0.00482236517748993 * v[6] + 0.127964674433231 * v[2] + v[13]; + y[113] = + -0.00481963234700404 * v[9] + -0.00482236517748993 * v[4] + 0.127964674433231 * v[0] + v[19]; + y[114] = -0.00481963234700404 * v[17] + -0.00482236517748993 * v[15] + 0.127964674433231 * v[12] + + v[14]; + y[116] = + -0.0431879534009673 * v[7] + -0.0432910953943817 * v[6] + 0.146945674433231 * v[2] + v[13]; + y[117] = + -0.0431879534009673 * v[9] + -0.0432910953943817 * v[4] + 0.146945674433231 * v[0] + v[19]; + y[118] = + -0.0431879534009673 * v[17] + -0.0432910953943817 * v[15] + 0.146945674433231 * v[12] + v[14]; + y[120] = + -0.0443419516678637 * v[7] + -0.0443658977017852 * v[6] + 0.113249674433231 * v[2] + v[13]; + y[121] = + -0.0443419516678637 * v[9] + -0.0443658977017852 * v[4] + 0.113249674433231 * v[0] + v[19]; + y[122] = + -0.0443419516678637 * v[17] + -0.0443658977017852 * v[15] + 0.113249674433231 * v[12] + v[14]; + v[3] = 0.707106781186547 * v[7] + -0.707106781186548 * v[6]; + v[10] = 0.707106781186548 * v[7] + 0.707106781186547 * v[6]; + v[1] = 0.707106781186548 * x[7]; + v[5] = 0.707106781186547 * x[7]; + v[16] = v[13] + v[7] * v[1] + v[6] * v[5] + 0.1654 * v[2]; + y[124] = 0.003501 * v[3] + 0.0185 * v[10] + 0.011 * v[2] + v[16]; + v[8] = 0.707106781186547 * v[9] + -0.707106781186548 * v[4]; + v[18] = 0.707106781186548 * v[9] + 0.707106781186547 * v[4]; + v[11] = v[19] + v[9] * v[1] + v[4] * v[5] + 0.1654 * v[0]; + y[125] = 0.003501 * v[8] + 0.0185 * v[18] + 0.011 * v[0] + v[11]; + v[20] = 0.707106781186547 * v[17] + -0.707106781186548 * v[15]; + v[21] = 0.707106781186548 * v[17] + 0.707106781186547 * v[15]; + v[5] = v[14] + v[17] * v[1] + v[15] * v[5] + 0.1654 * v[12]; + y[126] = 0.003501 * v[20] + 0.0185 * v[21] + 0.011 * v[12] + v[5]; + y[128] = -0.0035 * v[3] + 0.0185 * v[10] + 0.011 * v[2] + v[16]; + y[129] = -0.0035 * v[8] + 0.0185 * v[18] + 0.011 * v[0] + v[11]; + y[130] = -0.0035 * v[20] + 0.0185 * v[21] + 0.011 * v[12] + v[5]; + y[132] = 0.007892 * v[3] + 0.004664 * v[10] + 0.0022 * v[2] + v[16]; + y[133] = 0.007892 * v[8] + 0.004664 * v[18] + 0.0022 * v[0] + v[11]; + y[134] = 0.007892 * v[20] + 0.004664 * v[21] + 0.0022 * v[12] + v[5]; + y[136] = 0.007396 * v[3] + 0.009148 * v[10] + 0.0022 * v[2] + v[16]; + y[137] = 0.007396 * v[8] + 0.009148 * v[18] + 0.0022 * v[0] + v[11]; + y[138] = 0.007396 * v[20] + 0.009148 * v[21] + 0.0022 * v[12] + v[5]; + y[140] = 0.000716 * v[3] + 0.0043 * v[10] + 0.0022 * v[2] + v[16]; + y[141] = 0.000716 * v[8] + 0.0043 * v[18] + 0.0022 * v[0] + v[11]; + y[142] = 0.000716 * v[20] + 0.0043 * v[21] + 0.0022 * v[12] + v[5]; + y[144] = -0.000175 * v[3] + 0.008894 * v[10] + 0.0022 * v[2] + v[16]; + y[145] = -0.000175 * v[8] + 0.008894 * v[18] + 0.0022 * v[0] + v[11]; + y[146] = -0.000175 * v[20] + 0.008894 * v[21] + 0.0022 * v[12] + v[5]; + y[148] = -0.007202 * v[3] + 0.004383 * v[10] + 0.0022 * v[2] + v[16]; + y[149] = -0.007202 * v[8] + 0.004383 * v[18] + 0.0022 * v[0] + v[11]; + y[150] = -0.007202 * v[20] + 0.004383 * v[21] + 0.0022 * v[12] + v[5]; + y[152] = -0.007549 * v[3] + 0.0089 * v[10] + 0.0022 * v[2] + v[16]; + y[153] = -0.007549 * v[8] + 0.0089 * v[18] + 0.0022 * v[0] + v[11]; + y[154] = -0.007549 * v[20] + 0.0089 * v[21] + 0.0022 * v[12] + v[5]; + y[156] = 1.6e-05 * v[3] + 0.011945 * v[10] + 0.0352 * v[2] + v[16]; + y[157] = 1.6e-05 * v[8] + 0.011945 * v[18] + 0.0352 * v[0] + v[11]; + y[158] = 1.6e-05 * v[20] + 0.011945 * v[21] + 0.0352 * v[12] + v[5]; + y[160] = -0.004842 * v[3] + 0.017471 * v[10] + 0.025629 * v[2] + v[16]; + y[161] = -0.004842 * v[8] + 0.017471 * v[18] + 0.025629 * v[0] + v[11]; + y[162] = -0.004842 * v[20] + 0.017471 * v[21] + 0.025629 * v[12] + v[5]; + y[164] = 0.004004 * v[3] + 0.017923 * v[10] + 0.024847 * v[2] + v[16]; + y[165] = 0.004004 * v[8] + 0.017923 * v[18] + 0.024847 * v[0] + v[11]; + y[166] = 0.004004 * v[20] + 0.017923 * v[21] + 0.024847 * v[12] + v[5]; + y[168] = 0.00758 * v[10] + 0.04525 * v[2] + v[16]; + y[169] = 0.00758 * v[18] + 0.04525 * v[0] + v[11]; + y[170] = 0.00758 * v[21] + 0.04525 * v[12] + v[5]; + v[5] = -0.707106781186547 * v[7] + 0.707106781186548 * v[6]; + v[21] = -0.707106781186548 * v[7] + -0.707106781186547 * v[6]; + v[11] = -0.707106781186548 * x[8]; + v[18] = -0.707106781186547 * x[8]; + v[13] = v[13] + v[7] * v[11] + v[6] * v[18] + 0.1654 * v[2]; + y[172] = 0.003501 * v[5] + 0.0185 * v[21] + 0.011 * v[2] + v[13]; + v[6] = -0.707106781186547 * v[9] + 0.707106781186548 * v[4]; + v[7] = -0.707106781186548 * v[9] + -0.707106781186547 * v[4]; + v[19] = v[19] + v[9] * v[11] + v[4] * v[18] + 0.1654 * v[0]; + y[173] = 0.003501 * v[6] + 0.0185 * v[7] + 0.011 * v[0] + v[19]; + v[4] = -0.707106781186547 * v[17] + 0.707106781186548 * v[15]; + v[9] = -0.707106781186548 * v[17] + -0.707106781186547 * v[15]; + v[18] = v[14] + v[17] * v[11] + v[15] * v[18] + 0.1654 * v[12]; + y[174] = 0.003501 * v[4] + 0.0185 * v[9] + 0.011 * v[12] + v[18]; + y[176] = -0.0035 * v[5] + 0.0185 * v[21] + 0.011 * v[2] + v[13]; + y[177] = -0.0035 * v[6] + 0.0185 * v[7] + 0.011 * v[0] + v[19]; + y[178] = -0.0035 * v[4] + 0.0185 * v[9] + 0.011 * v[12] + v[18]; + y[180] = 0.007892 * v[5] + 0.004664 * v[21] + 0.0022 * v[2] + v[13]; + y[181] = 0.007892 * v[6] + 0.004664 * v[7] + 0.0022 * v[0] + v[19]; + y[182] = 0.007892 * v[4] + 0.004664 * v[9] + 0.0022 * v[12] + v[18]; + y[184] = 0.007396 * v[5] + 0.009148 * v[21] + 0.0022 * v[2] + v[13]; + y[185] = 0.007396 * v[6] + 0.009148 * v[7] + 0.0022 * v[0] + v[19]; + y[186] = 0.007396 * v[4] + 0.009148 * v[9] + 0.0022 * v[12] + v[18]; + y[188] = 0.000716 * v[5] + 0.0043 * v[21] + 0.0022 * v[2] + v[13]; + y[189] = 0.000716 * v[6] + 0.0043 * v[7] + 0.0022 * v[0] + v[19]; + y[190] = 0.000716 * v[4] + 0.0043 * v[9] + 0.0022 * v[12] + v[18]; + y[192] = -0.000175 * v[5] + 0.008894 * v[21] + 0.0022 * v[2] + v[13]; + y[193] = -0.000175 * v[6] + 0.008894 * v[7] + 0.0022 * v[0] + v[19]; + y[194] = -0.000175 * v[4] + 0.008894 * v[9] + 0.0022 * v[12] + v[18]; + y[196] = -0.007202 * v[5] + 0.004383 * v[21] + 0.0022 * v[2] + v[13]; + y[197] = -0.007202 * v[6] + 0.004383 * v[7] + 0.0022 * v[0] + v[19]; + y[198] = -0.007202 * v[4] + 0.004383 * v[9] + 0.0022 * v[12] + v[18]; + y[200] = -0.007549 * v[5] + 0.0089 * v[21] + 0.0022 * v[2] + v[13]; + y[201] = -0.007549 * v[6] + 0.0089 * v[7] + 0.0022 * v[0] + v[19]; + y[202] = -0.007549 * v[4] + 0.0089 * v[9] + 0.0022 * v[12] + v[18]; + y[204] = + 0.00408605801887313 * v[5] + 0.0136422240177223 * v[21] + 0.0314984681832196 * v[2] + v[13]; + y[205] = + 0.00408605801887313 * v[6] + 0.0136422240177223 * v[7] + 0.0314984681832196 * v[0] + v[19]; + y[206] = + 0.00408605801887313 * v[4] + 0.0136422240177223 * v[9] + 0.0314984681832196 * v[12] + v[18]; + y[208] = + 5.80188731266046e-08 * v[5] + 0.0195482240177223 * v[21] + 0.0209754681832196 * v[2] + v[13]; + y[209] = + 5.80188731266046e-08 * v[6] + 0.0195482240177223 * v[7] + 0.0209754681832196 * v[0] + v[19]; + y[210] = + 5.80188731266046e-08 * v[4] + 0.0195482240177223 * v[9] + 0.0209754681832196 * v[12] + v[18]; + y[212] = + -0.00501194198112687 * v[5] + 0.0137262240177223 * v[21] + 0.0309874681832196 * v[2] + v[13]; + y[213] = + -0.00501194198112687 * v[6] + 0.0137262240177223 * v[7] + 0.0309874681832196 * v[0] + v[19]; + y[214] = + -0.00501194198112687 * v[4] + 0.0137262240177223 * v[9] + 0.0309874681832196 * v[12] + v[18]; + y[216] = 0.00758 * v[21] + 0.04525 * v[2] + v[13]; + y[217] = 0.00758 * v[7] + 0.04525 * v[0] + v[19]; + y[218] = 0.00758 * v[9] + 0.04525 * v[12] + v[18]; + // dependent variables without operations + y[0] = -0.0860495389437377; + y[1] = 0.0036964648894988; + y[2] = 0.0394402485578895; + y[3] = 0.0936459973454475; + y[4] = -0.0156275389437377; + y[5] = 0.000401464889498803; + y[6] = 0.0662522485578895; + y[7] = 0.117857001721859; + y[10] = 0.193462213836312; + y[11] = 0.0765959993004799; + y[14] = 0.333404213836312; + y[15] = 0.0772090032696724; + y[18] = 0.259795213836312; + y[19] = 0.0638410001993179; + y[23] = 0.0768160000443459; + y[27] = 0.0774890035390854; + y[31] = 0.0620479993522167; + y[35] = 0.0759430006146431; + y[39] = 0.0750190019607544; + y[43] = 0.0620479993522167; + y[47] = 0.0754949972033501; + y[51] = 0.0753609985113144; + y[55] = 0.0551490001380444; + y[59] = 0.0688280016183853; + y[63] = 0.048845998942852; + y[67] = 0.0370859988033772; + y[71] = 0.0385459996759892; + y[75] = 0.0522850006818771; + y[79] = 0.0658399984240532; + y[83] = 0.0613869987428188; + y[87] = 0.0590230002999306; + y[91] = 0.0827130004763603; + y[95] = 0.0768309980630875; + y[99] = 0.0545630007982254; + y[103] = 0.0425949990749359; + y[107] = 0.0443940013647079; + y[111] = 0.0489780008792877; + y[115] = 0.0503519997000694; + y[119] = 0.0444249995052814; + y[123] = 0.0439950004220009; + y[127] = 0.0145770004019141; + y[131] = 0.0145779997110367; + y[135] = 0.00429000006988645; + y[139] = 0.00456399982795119; + y[143] = 0.00486999982967973; + y[147] = 0.00475199986249208; + y[151] = 0.00469500012695789; + y[155] = 0.00457100011408329; + y[159] = 0.0101910000666976; + y[163] = 0.0100819999352098; + y[167] = 0.00970400031656027; + y[171] = 0.0148290004581213; + y[175] = 0.0145770004019141; + y[179] = 0.0145779997110367; + y[183] = 0.00429000006988645; + y[187] = 0.00456399982795119; + y[191] = 0.00486999982967973; + y[195] = 0.00475199986249208; + y[199] = 0.00469500012695789; + y[203] = 0.00457100011408329; + y[207] = 0.0101370001211762; + y[211] = 0.0107009997591376; + y[215] = 0.0105830002576113; + y[219] = 0.0148290004581213; + + for (auto i = 0U; i < 55; ++i) + { + out.x[i] = y[i * 4 + 0]; + out.y[i] = y[i * 4 + 1]; + out.z[i] = y[i * 4 + 2]; + out.r[i] = y[i * 4 + 3]; + } + } + + using Debug = std:: + pair>, std::vector>>; + + template + inline static auto fkcc_debug( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept -> Debug + { + std::array, 85> v; + std::array, 264> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -v[1]; + y[8] = 0.000257275745272636 * v[0] + 0.000364961584091189 * v[2]; + y[9] = 0.000257275745272636 * v[1] + 0.000364961584091189 * v[0]; + y[12] = -0.000222724254727364 * v[0] + -0.0542900384159088 * v[2]; + y[13] = -0.000222724254727364 * v[1] + -0.0542900384159088 * v[0]; + y[16] = 0.00218527574527264 * v[0] + -0.0323670384159088 * v[2]; + y[17] = 0.00218527574527264 * v[1] + -0.0323670384159088 * v[0]; + v[3] = cos(x[1]); + v[4] = sin(x[1]); + v[5] = -4.44089209850063e-16 * v[4]; + v[6] = v[0] * v[3] + v[2] * v[5]; + v[7] = -v[4]; + v[8] = -4.44089209850063e-16 * v[3]; + v[9] = v[0] * v[7] + v[2] * v[8]; + y[20] = -0.000270674825549126 * v[6] + 0.00107043164694309 * v[9] + 0.0537209802794456 * v[2]; + v[5] = v[1] * v[3] + v[0] * v[5]; + v[8] = v[1] * v[7] + v[0] * v[8]; + y[21] = -0.000270674825549126 * v[5] + 0.00107043164694309 * v[8] + 0.0537209802794456 * v[0]; + v[4] = -1. * v[4]; + v[3] = -1. * v[3]; + y[22] = 0.333 + -0.000270674825549126 * v[4] + -2.38569076846698e-17 + 0.00107043164694309 * v[3]; + y[24] = -8.36748255491256e-05 * v[6] + -0.140628568353057 * v[9] + 8.99802794456506e-05 * v[2]; + y[25] = -8.36748255491256e-05 * v[5] + -0.140628568353057 * v[8] + 8.99802794456506e-05 * v[0]; + y[26] = 0.333 + -8.36748255491256e-05 * v[4] + -3.99592712011068e-20 + -0.140628568353057 * v[3]; + y[28] = 0.000396325174450874 * v[6] + -0.0708775683530569 * v[9] + 0.0343639802794456 * v[2]; + y[29] = 0.000396325174450874 * v[5] + -0.0708775683530569 * v[8] + 0.0343639802794456 * v[0]; + y[30] = 0.333 + 0.000396325174450874 * v[4] + -1.52606728496022e-17 + -0.0708775683530569 * v[3]; + v[7] = cos(x[2]); + v[10] = sin(x[2]); + v[11] = -4.44089209850063e-16 * v[10]; + v[12] = v[6] * v[7] + v[9] * v[11] + v[2] * v[10]; + v[13] = -v[10]; + v[14] = -4.44089209850063e-16 * v[7]; + v[15] = v[6] * v[13] + v[9] * v[14] + v[2] * v[7]; + v[16] = -1. * v[9] + -4.44089209850063e-16 * v[2]; + v[17] = -0.316 * v[9]; + y[32] = + 0.0824602061868906 * v[12] + 0.051286252776742 * v[15] + -0.00220886971879006 * v[16] + v[17]; + v[18] = v[5] * v[7] + v[8] * v[11] + v[0] * v[10]; + v[19] = v[5] * v[13] + v[8] * v[14] + v[0] * v[7]; + v[20] = -1. * v[8] + -4.44089209850063e-16 * v[0]; + v[21] = -0.316 * v[8]; + y[33] = + 0.0824602061868906 * v[18] + 0.051286252776742 * v[19] + -0.00220886971879006 * v[20] + v[21]; + v[11] = v[4] * v[7] + v[3] * v[11] + -4.44089209850063e-16 * v[10]; + v[14] = v[4] * v[13] + v[3] * v[14] + -4.44089209850063e-16 * v[7]; + v[13] = 1.97215226305253e-31 + -1. * v[3]; + v[7] = 0.333 + -0.316 * v[3]; + y[34] = + 0.0824602061868906 * v[11] + 0.051286252776742 * v[14] + -0.00220886971879006 * v[13] + v[7]; + y[36] = -0.000216793813109399 * v[12] + 0.000107252776741982 * v[15] + + -0.0731218697187901 * v[16] + v[17]; + y[37] = -0.000216793813109399 * v[18] + 0.000107252776741982 * v[19] + + -0.0731218697187901 * v[20] + v[21]; + y[38] = -0.000216793813109399 * v[11] + 0.000107252776741982 * v[14] + + -0.0731218697187901 * v[13] + v[7]; + y[40] = + 0.0557052061868906 * v[12] + 0.037208252776742 * v[15] + -0.0243828697187901 * v[16] + v[17]; + y[41] = + 0.0557052061868906 * v[18] + 0.037208252776742 * v[19] + -0.0243828697187901 * v[20] + v[21]; + y[42] = + 0.0557052061868906 * v[11] + 0.037208252776742 * v[14] + -0.0243828697187901 * v[13] + v[7]; + v[10] = cos(x[3]); + v[22] = sin(x[3]); + v[23] = -4.44089209850063e-16 * v[22]; + v[24] = v[12] * v[10] + v[15] * v[23] + v[16] * v[22]; + v[25] = -v[22]; + v[26] = -4.44089209850063e-16 * v[10]; + v[27] = v[12] * v[25] + v[15] * v[26] + v[16] * v[10]; + v[28] = -1. * v[15] + -4.44089209850063e-16 * v[16]; + v[29] = v[17] + 0.0825 * v[12]; + y[44] = -0.0823836891956329 * v[24] + 0.0737984290605783 * v[27] + -2.6764888167382e-05 * v[28] + + v[29]; + v[30] = v[18] * v[10] + v[19] * v[23] + v[20] * v[22]; + v[31] = v[18] * v[25] + v[19] * v[26] + v[20] * v[10]; + v[32] = -1. * v[19] + -4.44089209850063e-16 * v[20]; + v[33] = v[21] + 0.0825 * v[18]; + y[45] = -0.0823836891956329 * v[30] + 0.0737984290605783 * v[31] + -2.6764888167382e-05 * v[32] + + v[33]; + v[23] = v[11] * v[10] + v[14] * v[23] + v[13] * v[22]; + v[26] = v[11] * v[25] + v[14] * v[26] + v[13] * v[10]; + v[25] = -1. * v[14] + -4.44089209850063e-16 * v[13]; + v[10] = v[7] + 0.0825 * v[11]; + y[46] = -0.0823836891956329 * v[23] + 0.0737984290605783 * v[26] + -2.6764888167382e-05 * v[25] + + v[10]; + y[48] = 0.000159310804367069 * v[24] + -7.85709394216516e-05 * v[27] + + 0.0512292351118326 * v[28] + v[29]; + y[49] = 0.000159310804367069 * v[30] + -7.85709394216516e-05 * v[31] + + 0.0512292351118326 * v[32] + v[33]; + y[50] = 0.000159310804367069 * v[23] + -7.85709394216516e-05 * v[26] + + 0.0512292351118326 * v[25] + v[10]; + y[52] = + -0.0387426891956329 * v[24] + 0.0291004290605783 * v[27] + 0.0302542351118326 * v[28] + v[29]; + y[53] = + -0.0387426891956329 * v[30] + 0.0291004290605783 * v[31] + 0.0302542351118326 * v[32] + v[33]; + y[54] = + -0.0387426891956329 * v[23] + 0.0291004290605783 * v[26] + 0.0302542351118326 * v[25] + v[10]; + v[22] = cos(x[4]); + v[34] = sin(x[4]); + v[35] = -4.44089209850063e-16 * v[34]; + v[36] = -1. * v[34]; + v[37] = v[24] * v[22] + v[27] * v[35] + v[28] * v[36]; + v[34] = -v[34]; + v[38] = -4.44089209850063e-16 * v[22]; + v[39] = -1. * v[22]; + v[40] = v[24] * v[34] + v[27] * v[38] + v[28] * v[39]; + v[41] = v[27] + -4.44089209850063e-16 * v[28]; + v[42] = v[29] + -0.0825 * v[24] + 0.384 * v[27]; + y[56] = -0.000434186588168144 * v[37] + 0.066180057600975 * v[40] + + -0.000121777759432798 * v[41] + v[42]; + v[43] = v[30] * v[22] + v[31] * v[35] + v[32] * v[36]; + v[44] = v[30] * v[34] + v[31] * v[38] + v[32] * v[39]; + v[45] = v[31] + -4.44089209850063e-16 * v[32]; + v[46] = v[33] + -0.0825 * v[30] + 0.384 * v[31]; + y[57] = -0.000434186588168144 * v[43] + 0.066180057600975 * v[44] + + -0.000121777759432798 * v[45] + v[46]; + v[36] = v[23] * v[22] + v[26] * v[35] + v[25] * v[36]; + v[39] = v[23] * v[34] + v[26] * v[38] + v[25] * v[39]; + v[38] = v[26] + -4.44089209850063e-16 * v[25]; + v[34] = v[10] + -0.0825 * v[23] + 0.384 * v[26]; + y[58] = -0.000434186588168144 * v[36] + 0.066180057600975 * v[39] + + -0.000121777759432798 * v[38] + v[34]; + y[60] = 0.000235813411831856 * v[37] + 0.088863057600975 * v[40] + -0.0383667777594328 * v[41] + + v[42]; + y[61] = 0.000235813411831856 * v[43] + 0.088863057600975 * v[44] + -0.0383667777594328 * v[45] + + v[46]; + y[62] = 0.000235813411831856 * v[36] + 0.088863057600975 * v[39] + -0.0383667777594328 * v[38] + + v[34]; + y[64] = -2.21865881681442e-05 * v[37] + 0.090490057600975 * v[40] + -0.0906467777594328 * v[41] + + v[42]; + y[65] = -2.21865881681442e-05 * v[43] + 0.090490057600975 * v[44] + -0.0906467777594328 * v[45] + + v[46]; + y[66] = -2.21865881681442e-05 * v[36] + 0.090490057600975 * v[39] + -0.0906467777594328 * v[38] + + v[34]; + y[68] = + -0.00225518658816814 * v[37] + 0.082432057600975 * v[40] + -0.129776777759433 * v[41] + v[42]; + y[69] = + -0.00225518658816814 * v[43] + 0.082432057600975 * v[44] + -0.129776777759433 * v[45] + v[46]; + y[70] = + -0.00225518658816814 * v[36] + 0.082432057600975 * v[39] + -0.129776777759433 * v[38] + v[34]; + y[72] = + 0.00197281341183186 * v[37] + 0.056373057600975 * v[40] + -0.183438777759433 * v[41] + v[42]; + y[73] = + 0.00197281341183186 * v[43] + 0.056373057600975 * v[44] + -0.183438777759433 * v[45] + v[46]; + y[74] = + 0.00197281341183186 * v[36] + 0.056373057600975 * v[39] + -0.183438777759433 * v[38] + v[34]; + y[76] = + -0.00659618658816814 * v[37] + 0.016208057600975 * v[40] + -0.214312777759433 * v[41] + v[42]; + y[77] = + -0.00659618658816814 * v[43] + 0.016208057600975 * v[44] + -0.214312777759433 * v[45] + v[46]; + y[78] = + -0.00659618658816814 * v[36] + 0.016208057600975 * v[39] + -0.214312777759433 * v[38] + v[34]; + y[80] = 0.0130218134118319 * v[37] + -0.00144994239902496 * v[40] + -0.219200777759433 * v[41] + + v[42]; + y[81] = 0.0130218134118319 * v[43] + -0.00144994239902496 * v[44] + -0.219200777759433 * v[45] + + v[46]; + y[82] = 0.0130218134118319 * v[36] + -0.00144994239902496 * v[39] + -0.219200777759433 * v[38] + + v[34]; + y[84] = -0.00891518658816814 * v[37] + -0.00937694239902497 * v[40] + -0.221168777759433 * v[41] + + v[42]; + y[85] = -0.00891518658816814 * v[43] + -0.00937694239902497 * v[44] + -0.221168777759433 * v[45] + + v[46]; + y[86] = -0.00891518658816814 * v[36] + -0.00937694239902497 * v[39] + -0.221168777759433 * v[38] + + v[34]; + v[35] = cos(x[5]); + v[22] = sin(x[5]); + v[47] = -4.44089209850063e-16 * v[22]; + v[48] = v[37] * v[35] + v[40] * v[47] + v[41] * v[22]; + v[49] = -v[22]; + v[50] = -4.44089209850063e-16 * v[35]; + v[51] = v[37] * v[49] + v[40] * v[50] + v[41] * v[35]; + v[52] = -1. * v[40] + -4.44089209850063e-16 * v[41]; + y[88] = 0.0885216327220502 * v[48] + 0.0116328354930215 * v[51] + -0.00106414643673269 * v[52] + + v[42]; + v[53] = v[43] * v[35] + v[44] * v[47] + v[45] * v[22]; + v[54] = v[43] * v[49] + v[44] * v[50] + v[45] * v[35]; + v[55] = -1. * v[44] + -4.44089209850063e-16 * v[45]; + y[89] = 0.0885216327220502 * v[53] + 0.0116328354930215 * v[54] + -0.00106414643673269 * v[55] + + v[46]; + v[47] = v[36] * v[35] + v[39] * v[47] + v[38] * v[22]; + v[50] = v[36] * v[49] + v[39] * v[50] + v[38] * v[35]; + v[49] = -1. * v[39] + -4.44089209850063e-16 * v[38]; + y[90] = 0.0885216327220502 * v[47] + 0.0116328354930215 * v[50] + -0.00106414643673269 * v[49] + + v[34]; + y[92] = + 0.0119076327220502 * v[48] + 0.0110828354930215 * v[51] + 0.0174398535632673 * v[52] + v[42]; + y[93] = + 0.0119076327220502 * v[53] + 0.0110828354930215 * v[54] + 0.0174398535632673 * v[55] + v[46]; + y[94] = + 0.0119076327220502 * v[47] + 0.0110828354930215 * v[50] + 0.0174398535632673 * v[49] + v[34]; + v[35] = cos(x[6]); + v[22] = sin(x[6]); + v[56] = -4.44089209850063e-16 * v[22]; + v[57] = v[48] * v[35] + v[51] * v[56] + v[52] * v[22]; + v[58] = -v[22]; + v[59] = -4.44089209850063e-16 * v[35]; + v[60] = v[48] * v[58] + v[51] * v[59] + v[52] * v[35]; + v[61] = -1. * v[51] + -4.44089209850063e-16 * v[52]; + v[62] = v[42] + 0.088 * v[48]; + y[96] = 0.000103343574285507 * v[57] + -0.000882708185553551 * v[60] + + 0.0776681043272018 * v[61] + v[62]; + v[63] = v[53] * v[35] + v[54] * v[56] + v[55] * v[22]; + v[64] = v[53] * v[58] + v[54] * v[59] + v[55] * v[35]; + v[65] = -1. * v[54] + -4.44089209850063e-16 * v[55]; + v[66] = v[46] + 0.088 * v[53]; + y[97] = 0.000103343574285507 * v[63] + -0.000882708185553551 * v[64] + + 0.0776681043272018 * v[65] + v[66]; + v[56] = v[47] * v[35] + v[50] * v[56] + v[49] * v[22]; + v[59] = v[47] * v[58] + v[50] * v[59] + v[49] * v[35]; + v[58] = -1. * v[50] + -4.44089209850063e-16 * v[49]; + v[35] = v[34] + 0.088 * v[47]; + y[98] = 0.000103343574285507 * v[56] + -0.000882708185553551 * v[59] + + 0.0776681043272018 * v[58] + v[35]; + y[100] = + 0.0398483435742855 * v[57] + 0.0399532918144464 * v[60] + 0.0790931043272018 * v[61] + v[62]; + y[101] = + 0.0398483435742855 * v[63] + 0.0399532918144464 * v[64] + 0.0790931043272018 * v[65] + v[66]; + y[102] = + 0.0398483435742855 * v[56] + 0.0399532918144464 * v[59] + 0.0790931043272018 * v[58] + v[35]; + y[104] = + 0.0526858266329919 * v[57] + 0.0525558145818925 * v[60] + 0.134520674433231 * v[61] + v[62]; + y[105] = + 0.0526858266329919 * v[63] + 0.0525558145818925 * v[64] + 0.134520674433231 * v[65] + v[66]; + y[106] = + 0.0526858266329919 * v[56] + 0.0525558145818925 * v[59] + 0.134520674433231 * v[58] + v[35]; + y[108] = + 0.0239122374929489 * v[57] + 0.0238755635369661 * v[60] + 0.130450674433231 * v[61] + v[62]; + y[109] = + 0.0239122374929489 * v[63] + 0.0238755635369661 * v[64] + 0.130450674433231 * v[65] + v[66]; + y[110] = + 0.0239122374929489 * v[56] + 0.0238755635369661 * v[59] + 0.130450674433231 * v[58] + v[35]; + y[112] = -0.00481963234700404 * v[57] + -0.00482236517748993 * v[60] + 0.127964674433231 * v[61] + + v[62]; + y[113] = -0.00481963234700404 * v[63] + -0.00482236517748993 * v[64] + 0.127964674433231 * v[65] + + v[66]; + y[114] = -0.00481963234700404 * v[56] + -0.00482236517748993 * v[59] + 0.127964674433231 * v[58] + + v[35]; + y[116] = + -0.0431879534009673 * v[57] + -0.0432910953943817 * v[60] + 0.146945674433231 * v[61] + v[62]; + y[117] = + -0.0431879534009673 * v[63] + -0.0432910953943817 * v[64] + 0.146945674433231 * v[65] + v[66]; + y[118] = + -0.0431879534009673 * v[56] + -0.0432910953943817 * v[59] + 0.146945674433231 * v[58] + v[35]; + y[120] = + -0.0443419516678637 * v[57] + -0.0443658977017852 * v[60] + 0.113249674433231 * v[61] + v[62]; + y[121] = + -0.0443419516678637 * v[63] + -0.0443658977017852 * v[64] + 0.113249674433231 * v[65] + v[66]; + y[122] = + -0.0443419516678637 * v[56] + -0.0443658977017852 * v[59] + 0.113249674433231 * v[58] + v[35]; + v[22] = 0.707106781186547 * v[57] + -0.707106781186548 * v[60]; + v[67] = 0.707106781186548 * v[57] + 0.707106781186547 * v[60]; + v[68] = 0.707106781186548 * x[7]; + v[69] = 0.707106781186547 * x[7]; + v[70] = v[62] + v[57] * v[68] + v[60] * v[69] + 0.1654 * v[61]; + y[124] = 0.003501 * v[22] + 0.0185 * v[67] + 0.011 * v[61] + v[70]; + v[71] = 0.707106781186547 * v[63] + -0.707106781186548 * v[64]; + v[72] = 0.707106781186548 * v[63] + 0.707106781186547 * v[64]; + v[73] = v[66] + v[63] * v[68] + v[64] * v[69] + 0.1654 * v[65]; + y[125] = 0.003501 * v[71] + 0.0185 * v[72] + 0.011 * v[65] + v[73]; + v[74] = 0.707106781186547 * v[56] + -0.707106781186548 * v[59]; + v[75] = 0.707106781186548 * v[56] + 0.707106781186547 * v[59]; + v[69] = v[35] + v[56] * v[68] + v[59] * v[69] + 0.1654 * v[58]; + y[126] = 0.003501 * v[74] + 0.0185 * v[75] + 0.011 * v[58] + v[69]; + y[128] = -0.0035 * v[22] + 0.0185 * v[67] + 0.011 * v[61] + v[70]; + y[129] = -0.0035 * v[71] + 0.0185 * v[72] + 0.011 * v[65] + v[73]; + y[130] = -0.0035 * v[74] + 0.0185 * v[75] + 0.011 * v[58] + v[69]; + y[132] = 0.007892 * v[22] + 0.004664 * v[67] + 0.0022 * v[61] + v[70]; + y[133] = 0.007892 * v[71] + 0.004664 * v[72] + 0.0022 * v[65] + v[73]; + y[134] = 0.007892 * v[74] + 0.004664 * v[75] + 0.0022 * v[58] + v[69]; + y[136] = 0.007396 * v[22] + 0.009148 * v[67] + 0.0022 * v[61] + v[70]; + y[137] = 0.007396 * v[71] + 0.009148 * v[72] + 0.0022 * v[65] + v[73]; + y[138] = 0.007396 * v[74] + 0.009148 * v[75] + 0.0022 * v[58] + v[69]; + y[140] = 0.000716 * v[22] + 0.0043 * v[67] + 0.0022 * v[61] + v[70]; + y[141] = 0.000716 * v[71] + 0.0043 * v[72] + 0.0022 * v[65] + v[73]; + y[142] = 0.000716 * v[74] + 0.0043 * v[75] + 0.0022 * v[58] + v[69]; + y[144] = -0.000175 * v[22] + 0.008894 * v[67] + 0.0022 * v[61] + v[70]; + y[145] = -0.000175 * v[71] + 0.008894 * v[72] + 0.0022 * v[65] + v[73]; + y[146] = -0.000175 * v[74] + 0.008894 * v[75] + 0.0022 * v[58] + v[69]; + y[148] = -0.007202 * v[22] + 0.004383 * v[67] + 0.0022 * v[61] + v[70]; + y[149] = -0.007202 * v[71] + 0.004383 * v[72] + 0.0022 * v[65] + v[73]; + y[150] = -0.007202 * v[74] + 0.004383 * v[75] + 0.0022 * v[58] + v[69]; + y[152] = -0.007549 * v[22] + 0.0089 * v[67] + 0.0022 * v[61] + v[70]; + y[153] = -0.007549 * v[71] + 0.0089 * v[72] + 0.0022 * v[65] + v[73]; + y[154] = -0.007549 * v[74] + 0.0089 * v[75] + 0.0022 * v[58] + v[69]; + y[156] = 1.6e-05 * v[22] + 0.011945 * v[67] + 0.0352 * v[61] + v[70]; + y[157] = 1.6e-05 * v[71] + 0.011945 * v[72] + 0.0352 * v[65] + v[73]; + y[158] = 1.6e-05 * v[74] + 0.011945 * v[75] + 0.0352 * v[58] + v[69]; + y[160] = -0.004842 * v[22] + 0.017471 * v[67] + 0.025629 * v[61] + v[70]; + y[161] = -0.004842 * v[71] + 0.017471 * v[72] + 0.025629 * v[65] + v[73]; + y[162] = -0.004842 * v[74] + 0.017471 * v[75] + 0.025629 * v[58] + v[69]; + y[164] = 0.004004 * v[22] + 0.017923 * v[67] + 0.024847 * v[61] + v[70]; + y[165] = 0.004004 * v[71] + 0.017923 * v[72] + 0.024847 * v[65] + v[73]; + y[166] = 0.004004 * v[74] + 0.017923 * v[75] + 0.024847 * v[58] + v[69]; + y[168] = 0.00758 * v[67] + 0.04525 * v[61] + v[70]; + y[169] = 0.00758 * v[72] + 0.04525 * v[65] + v[73]; + y[170] = 0.00758 * v[75] + 0.04525 * v[58] + v[69]; + v[68] = -0.707106781186547 * v[57] + 0.707106781186548 * v[60]; + v[76] = -0.707106781186548 * v[57] + -0.707106781186547 * v[60]; + v[77] = -0.707106781186548 * x[8]; + v[78] = -0.707106781186547 * x[8]; + v[79] = v[62] + v[57] * v[77] + v[60] * v[78] + 0.1654 * v[61]; + y[172] = 0.003501 * v[68] + 0.0185 * v[76] + 0.011 * v[61] + v[79]; + v[80] = -0.707106781186547 * v[63] + 0.707106781186548 * v[64]; + v[81] = -0.707106781186548 * v[63] + -0.707106781186547 * v[64]; + v[82] = v[66] + v[63] * v[77] + v[64] * v[78] + 0.1654 * v[65]; + y[173] = 0.003501 * v[80] + 0.0185 * v[81] + 0.011 * v[65] + v[82]; + v[83] = -0.707106781186547 * v[56] + 0.707106781186548 * v[59]; + v[84] = -0.707106781186548 * v[56] + -0.707106781186547 * v[59]; + v[78] = v[35] + v[56] * v[77] + v[59] * v[78] + 0.1654 * v[58]; + y[174] = 0.003501 * v[83] + 0.0185 * v[84] + 0.011 * v[58] + v[78]; + y[176] = -0.0035 * v[68] + 0.0185 * v[76] + 0.011 * v[61] + v[79]; + y[177] = -0.0035 * v[80] + 0.0185 * v[81] + 0.011 * v[65] + v[82]; + y[178] = -0.0035 * v[83] + 0.0185 * v[84] + 0.011 * v[58] + v[78]; + y[180] = 0.007892 * v[68] + 0.004664 * v[76] + 0.0022 * v[61] + v[79]; + y[181] = 0.007892 * v[80] + 0.004664 * v[81] + 0.0022 * v[65] + v[82]; + y[182] = 0.007892 * v[83] + 0.004664 * v[84] + 0.0022 * v[58] + v[78]; + y[184] = 0.007396 * v[68] + 0.009148 * v[76] + 0.0022 * v[61] + v[79]; + y[185] = 0.007396 * v[80] + 0.009148 * v[81] + 0.0022 * v[65] + v[82]; + y[186] = 0.007396 * v[83] + 0.009148 * v[84] + 0.0022 * v[58] + v[78]; + y[188] = 0.000716 * v[68] + 0.0043 * v[76] + 0.0022 * v[61] + v[79]; + y[189] = 0.000716 * v[80] + 0.0043 * v[81] + 0.0022 * v[65] + v[82]; + y[190] = 0.000716 * v[83] + 0.0043 * v[84] + 0.0022 * v[58] + v[78]; + y[192] = -0.000175 * v[68] + 0.008894 * v[76] + 0.0022 * v[61] + v[79]; + y[193] = -0.000175 * v[80] + 0.008894 * v[81] + 0.0022 * v[65] + v[82]; + y[194] = -0.000175 * v[83] + 0.008894 * v[84] + 0.0022 * v[58] + v[78]; + y[196] = -0.007202 * v[68] + 0.004383 * v[76] + 0.0022 * v[61] + v[79]; + y[197] = -0.007202 * v[80] + 0.004383 * v[81] + 0.0022 * v[65] + v[82]; + y[198] = -0.007202 * v[83] + 0.004383 * v[84] + 0.0022 * v[58] + v[78]; + y[200] = -0.007549 * v[68] + 0.0089 * v[76] + 0.0022 * v[61] + v[79]; + y[201] = -0.007549 * v[80] + 0.0089 * v[81] + 0.0022 * v[65] + v[82]; + y[202] = -0.007549 * v[83] + 0.0089 * v[84] + 0.0022 * v[58] + v[78]; + y[204] = + 0.00408605801887313 * v[68] + 0.0136422240177223 * v[76] + 0.0314984681832196 * v[61] + v[79]; + y[205] = + 0.00408605801887313 * v[80] + 0.0136422240177223 * v[81] + 0.0314984681832196 * v[65] + v[82]; + y[206] = + 0.00408605801887313 * v[83] + 0.0136422240177223 * v[84] + 0.0314984681832196 * v[58] + v[78]; + y[208] = 5.80188731266046e-08 * v[68] + 0.0195482240177223 * v[76] + 0.0209754681832196 * v[61] + + v[79]; + y[209] = 5.80188731266046e-08 * v[80] + 0.0195482240177223 * v[81] + 0.0209754681832196 * v[65] + + v[82]; + y[210] = 5.80188731266046e-08 * v[83] + 0.0195482240177223 * v[84] + 0.0209754681832196 * v[58] + + v[78]; + y[212] = -0.00501194198112687 * v[68] + 0.0137262240177223 * v[76] + 0.0309874681832196 * v[61] + + v[79]; + y[213] = -0.00501194198112687 * v[80] + 0.0137262240177223 * v[81] + 0.0309874681832196 * v[65] + + v[82]; + y[214] = -0.00501194198112687 * v[83] + 0.0137262240177223 * v[84] + 0.0309874681832196 * v[58] + + v[78]; + y[216] = 0.00758 * v[76] + 0.04525 * v[61] + v[79]; + y[217] = 0.00758 * v[81] + 0.04525 * v[65] + v[82]; + y[218] = 0.00758 * v[84] + 0.04525 * v[58] + v[78]; + y[224] = 1.62964861374348e-05 * v[0] + -0.0270740408450365 * v[2]; + y[225] = 1.62964861374348e-05 * v[1] + -0.0270740408450365 * v[0]; + y[228] = -0.000176759494934231 * v[6] + -0.0700937807559967 * v[9] + 0.0267863664776087 * v[2]; + y[229] = -0.000176759494934231 * v[5] + -0.0700937807559967 * v[8] + 0.0267863664776087 * v[0]; + y[230] = + 0.333 + -0.000176759494934231 * v[4] + -1.18955363237954e-17 + -0.0700937807559967 * v[3]; + y[232] = + 0.0414390936493874 * v[12] + 0.025893222540617 * v[15] + -0.0373931415379047 * v[16] + v[17]; + y[233] = + 0.0414390936493874 * v[18] + 0.025893222540617 * v[19] + -0.0373931415379047 * v[20] + v[21]; + y[234] = + 0.0414390936493874 * v[11] + 0.025893222540617 * v[14] + -0.0373931415379047 * v[13] + v[7]; + y[236] = + -0.0411574989557266 * v[24] + 0.0369004793465137 * v[27] + 0.0255731008946896 * v[28] + v[29]; + y[237] = + -0.0411574989557266 * v[30] + 0.0369004793465137 * v[31] + 0.0255731008946896 * v[32] + v[33]; + y[238] = + -0.0411574989557266 * v[23] + 0.0369004793465137 * v[26] + 0.0255731008946896 * v[25] + v[10]; + y[240] = -0.00449681794270873 * v[37] + 0.0299861840903759 * v[40] + -0.106009349226952 * v[41] + + v[42]; + y[241] = -0.00449681794270873 * v[43] + 0.0299861840903759 * v[44] + -0.106009349226952 * v[45] + + v[46]; + y[242] = -0.00449681794270873 * v[36] + 0.0299861840903759 * v[39] + -0.106009349226952 * v[38] + + v[34]; + y[244] = + 0.0530733652412891 * v[48] + 0.0113783581182361 * v[51] + 0.00749740563333035 * v[52] + v[42]; + y[245] = + 0.0530733652412891 * v[53] + 0.0113783581182361 * v[54] + 0.00749740563333035 * v[55] + v[46]; + y[246] = + 0.0530733652412891 * v[47] + 0.0113783581182361 * v[50] + 0.00749740563333035 * v[49] + v[34]; + y[248] = + 0.0158034916967154 * v[57] + 0.0152484085410833 * v[60] + 0.0782310143113136 * v[61] + v[62]; + y[249] = + 0.0158034916967154 * v[63] + 0.0152484085410833 * v[64] + 0.0782310143113136 * v[65] + v[66]; + y[250] = + 0.0158034916967154 * v[56] + 0.0152484085410833 * v[59] + 0.0782310143113136 * v[58] + v[35]; + y[252] = + 0.00388643983751535 * v[57] + 0.00380042637698352 * v[60] + 0.127833276987076 * v[61] + v[62]; + y[253] = + 0.00388643983751535 * v[63] + 0.00380042637698352 * v[64] + 0.127833276987076 * v[65] + v[66]; + y[254] = + 0.00388643983751535 * v[56] + 0.00380042637698352 * v[59] + 0.127833276987076 * v[58] + v[35]; + y[256] = -2.10780513043574e-06 * v[22] + 0.0129222339019179 * v[67] + 0.0280418023467064 * v[61] + + v[70]; + y[257] = -2.10780513043574e-06 * v[71] + 0.0129222339019179 * v[72] + 0.0280418023467064 * v[65] + + v[73]; + y[258] = -2.10780513043574e-06 * v[74] + 0.0129222339019179 * v[75] + 0.0280418023467064 * v[58] + + v[69]; + y[260] = -2.10780513043574e-06 * v[68] + 0.0129222339019179 * v[76] + 0.0280418023467064 * v[61] + + v[79]; + y[261] = -2.10780513043574e-06 * v[80] + 0.0129222339019179 * v[81] + 0.0280418023467064 * v[65] + + v[82]; + y[262] = -2.10780513043574e-06 * v[83] + 0.0129222339019179 * v[84] + 0.0280418023467064 * v[58] + + v[78]; + // dependent variables without operations + y[0] = -0.0860495389437377; + y[1] = 0.0036964648894988; + y[2] = 0.0394402485578895; + y[3] = 0.0936459973454475; + y[4] = -0.0156275389437377; + y[5] = 0.000401464889498803; + y[6] = 0.0662522485578895; + y[7] = 0.117857001721859; + y[10] = 0.193462213836312; + y[11] = 0.0765959993004799; + y[14] = 0.333404213836312; + y[15] = 0.0772090032696724; + y[18] = 0.259795213836312; + y[19] = 0.0638410001993179; + y[23] = 0.0768160000443459; + y[27] = 0.0774890035390854; + y[31] = 0.0620479993522167; + y[35] = 0.0759430006146431; + y[39] = 0.0750190019607544; + y[43] = 0.0620479993522167; + y[47] = 0.0754949972033501; + y[51] = 0.0753609985113144; + y[55] = 0.0551490001380444; + y[59] = 0.0688280016183853; + y[63] = 0.048845998942852; + y[67] = 0.0370859988033772; + y[71] = 0.0385459996759892; + y[75] = 0.0522850006818771; + y[79] = 0.0658399984240532; + y[83] = 0.0613869987428188; + y[87] = 0.0590230002999306; + y[91] = 0.0827130004763603; + y[95] = 0.0768309980630875; + y[99] = 0.0545630007982254; + y[103] = 0.0425949990749359; + y[107] = 0.0443940013647079; + y[111] = 0.0489780008792877; + y[115] = 0.0503519997000694; + y[119] = 0.0444249995052814; + y[123] = 0.0439950004220009; + y[127] = 0.0145770004019141; + y[131] = 0.0145779997110367; + y[135] = 0.00429000006988645; + y[139] = 0.00456399982795119; + y[143] = 0.00486999982967973; + y[147] = 0.00475199986249208; + y[151] = 0.00469500012695789; + y[155] = 0.00457100011408329; + y[159] = 0.0101910000666976; + y[163] = 0.0100819999352098; + y[167] = 0.00970400031656027; + y[171] = 0.0148290004581213; + y[175] = 0.0145770004019141; + y[179] = 0.0145779997110367; + y[183] = 0.00429000006988645; + y[187] = 0.00456399982795119; + y[191] = 0.00486999982967973; + y[195] = 0.00475199986249208; + y[199] = 0.00469500012695789; + y[203] = 0.00457100011408329; + y[207] = 0.0101370001211762; + y[211] = 0.0107009997591376; + y[215] = 0.0105830002576113; + y[219] = 0.0148290004581213; + y[220] = -0.0395360700786114; + y[221] = 0.00152012973558158; + y[222] = 0.0571494735777378; + y[223] = 0.143464222550392; + y[226] = 0.263718712508678; + y[227] = 0.152021005749702; + y[231] = 0.15290692448616; + y[235] = 0.13565456867218; + y[239] = 0.136457368731499; + y[243] = 0.180804252624512; + y[247] = 0.119181409478188; + y[251] = 0.0770802050828934; + y[255] = 0.113699048757553; + y[259] = 0.0328473672270775; + y[263] = 0.0328473672270775; + + Debug output; + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[0], y[1], y[2], y[3])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[4], y[5], y[6], y[7])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[8], y[9], y[10], y[11])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[12], y[13], y[14], y[15])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[16], y[17], y[18], y[19])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[20], y[21], y[22], y[23])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[24], y[25], y[26], y[27])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[28], y[29], y[30], y[31])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[32], y[33], y[34], y[35])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[36], y[37], y[38], y[39])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[40], y[41], y[42], y[43])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[44], y[45], y[46], y[47])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[48], y[49], y[50], y[51])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[52], y[53], y[54], y[55])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[56], y[57], y[58], y[59])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[60], y[61], y[62], y[63])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[64], y[65], y[66], y[67])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[68], y[69], y[70], y[71])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[72], y[73], y[74], y[75])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[76], y[77], y[78], y[79])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[80], y[81], y[82], y[83])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[84], y[85], y[86], y[87])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[88], y[89], y[90], y[91])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[92], y[93], y[94], y[95])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[96], y[97], y[98], y[99])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[100], y[101], y[102], y[103])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[104], y[105], y[106], y[107])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[108], y[109], y[110], y[111])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[112], y[113], y[114], y[115])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[116], y[117], y[118], y[119])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[120], y[121], y[122], y[123])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[124], y[125], y[126], y[127])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[128], y[129], y[130], y[131])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[132], y[133], y[134], y[135])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[136], y[137], y[138], y[139])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[140], y[141], y[142], y[143])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[144], y[145], y[146], y[147])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[148], y[149], y[150], y[151])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[152], y[153], y[154], y[155])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[156], y[157], y[158], y[159])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[160], y[161], y[162], y[163])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[164], y[165], y[166], y[167])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[168], y[169], y[170], y[171])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[172], y[173], y[174], y[175])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[176], y[177], y[178], y[179])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[180], y[181], y[182], y[183])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[184], y[185], y[186], y[187])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[188], y[189], y[190], y[191])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[192], y[193], y[194], y[195])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[196], y[197], y[198], y[199])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[200], y[201], y[202], y[203])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[204], y[205], y[206], y[207])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[208], y[209], y[210], y[211])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[212], y[213], y[214], y[215])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[216], y[217], y[218], y[219])); + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(0, 14); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(0, 15); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(0, 16); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(0, 17); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(0, 18); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(0, 19); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(0, 20); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(0, 21); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(1, 14); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(1, 15); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(1, 16); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(1, 17); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(1, 18); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(1, 19); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(1, 20); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(1, 21); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(0, 22); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(0, 23); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(1, 22); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(1, 23); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(0, 24); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(0, 25); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(1, 24); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(1, 25); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(0, 26); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(0, 27); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(0, 28); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(0, 29); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(0, 30); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(1, 26); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(1, 27); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(1, 28); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(1, 29); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(1, 30); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(0, 31); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(0, 32); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(0, 33); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(0, 34); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(0, 35); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(0, 36); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(0, 37); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(0, 38); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(0, 39); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(0, 40); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(0, 41); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(0, 42); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(1, 31); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(1, 32); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(1, 33); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(1, 34); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(1, 35); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(1, 36); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(1, 37); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(1, 38); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(1, 39); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(1, 40); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(1, 41); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(1, 42); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(0, 43); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(0, 44); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(0, 45); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(0, 46); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(0, 47); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(0, 48); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(0, 49); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(0, 50); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(0, 51); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(0, 52); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(0, 53); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(0, 54); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(1, 43); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(1, 44); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(1, 45); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(1, 46); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(1, 47); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(1, 48); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(1, 49); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(1, 50); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(1, 51); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(1, 52); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(1, 53); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(1, 54); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(2, 14); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(2, 15); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(2, 16); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(2, 17); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(2, 18); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(2, 19); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(2, 20); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(2, 21); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(3, 14); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(3, 15); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(3, 16); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(3, 17); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(3, 18); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(3, 19); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(3, 20); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(3, 21); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(4, 14); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(4, 15); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(4, 16); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(4, 17); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(4, 18); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(4, 19); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(4, 20); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(4, 21); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(2, 22); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(2, 23); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(3, 22); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(3, 23); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(4, 22); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(4, 23); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(2, 24); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(2, 25); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(3, 24); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(3, 25); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(4, 24); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(4, 25); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(2, 26); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(2, 27); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(2, 28); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(2, 29); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(2, 30); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(3, 26); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(3, 27); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(3, 28); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(3, 29); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(3, 30); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(4, 26); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(4, 27); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(4, 28); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(4, 29); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(4, 30); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(2, 31); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(2, 32); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(2, 33); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(2, 34); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(2, 35); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(2, 36); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(2, 37); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(2, 38); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(2, 39); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(2, 40); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(2, 41); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(2, 42); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(3, 31); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(3, 32); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(3, 33); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(3, 34); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(3, 35); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(3, 36); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(3, 37); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(3, 38); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(3, 39); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(3, 40); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(3, 41); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(3, 42); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(4, 31); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(4, 32); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(4, 33); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(4, 34); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(4, 35); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(4, 36); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(4, 37); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(4, 38); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(4, 39); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(4, 40); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(4, 41); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(4, 42); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(2, 43); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(2, 44); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(2, 45); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(2, 46); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(2, 47); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(2, 48); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(2, 49); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(2, 50); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(2, 51); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(2, 52); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(2, 53); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(2, 54); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(3, 43); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(3, 44); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(3, 45); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(3, 46); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(3, 47); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(3, 48); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(3, 49); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(3, 50); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(3, 51); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(3, 52); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(3, 53); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(3, 54); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(4, 43); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(4, 44); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(4, 45); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(4, 46); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(4, 47); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(4, 48); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(4, 49); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(4, 50); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(4, 51); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(4, 52); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(4, 53); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(4, 54); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(5, 14); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(5, 15); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(5, 16); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(5, 17); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(5, 18); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(5, 19); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(5, 20); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(5, 21); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(6, 14); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(6, 15); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(6, 16); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(6, 17); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(6, 18); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(6, 19); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(6, 20); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(6, 21); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(7, 14); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(7, 15); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(7, 16); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(7, 17); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(7, 18); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(7, 19); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(7, 20); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(7, 21); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(5, 24); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(5, 25); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(6, 24); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(6, 25); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(7, 24); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(7, 25); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(5, 26); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(5, 27); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(5, 28); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(5, 29); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(5, 30); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(6, 26); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(6, 27); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(6, 28); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(6, 29); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(6, 30); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(7, 26); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(7, 27); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(7, 28); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(7, 29); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(7, 30); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(5, 31); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(5, 32); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(5, 33); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(5, 34); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(5, 35); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(5, 36); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(5, 37); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(5, 38); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(5, 39); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(5, 40); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(5, 41); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(5, 42); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(6, 31); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(6, 32); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(6, 33); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(6, 34); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(6, 35); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(6, 36); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(6, 37); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(6, 38); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(6, 39); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(6, 40); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(6, 41); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(6, 42); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(7, 31); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(7, 32); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(7, 33); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(7, 34); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(7, 35); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(7, 36); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(7, 37); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(7, 38); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(7, 39); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(7, 40); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(7, 41); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(7, 42); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(5, 43); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(5, 44); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(5, 45); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(5, 46); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(5, 47); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(5, 48); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(5, 49); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(5, 50); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(5, 51); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(5, 52); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(5, 53); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(5, 54); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(6, 43); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(6, 44); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(6, 45); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(6, 46); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(6, 47); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(6, 48); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(6, 49); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(6, 50); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(6, 51); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(6, 52); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(6, 53); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(6, 54); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(7, 43); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(7, 44); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(7, 45); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(7, 46); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(7, 47); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(7, 48); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(7, 49); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(7, 50); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(7, 51); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(7, 52); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(7, 53); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(7, 54); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(14, 26); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(14, 27); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(14, 28); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(14, 29); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(14, 30); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(15, 26); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(15, 27); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(15, 28); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(15, 29); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(15, 30); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(16, 26); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(16, 27); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(16, 28); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(16, 29); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(16, 30); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(17, 26); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(17, 27); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(17, 28); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(17, 29); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(17, 30); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(18, 26); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(18, 27); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(18, 28); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(18, 29); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(18, 30); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(19, 26); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(19, 27); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(19, 28); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(19, 29); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(19, 30); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(20, 26); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(20, 27); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(20, 28); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(20, 29); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(20, 30); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(21, 26); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(21, 27); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(21, 28); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(21, 29); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(21, 30); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(14, 31); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(14, 32); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(14, 33); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(14, 34); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(14, 35); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(14, 36); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(14, 37); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(14, 38); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(14, 39); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(14, 40); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(14, 41); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(14, 42); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(15, 31); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(15, 32); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(15, 33); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(15, 34); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(15, 35); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(15, 36); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(15, 37); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(15, 38); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(15, 39); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(15, 40); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(15, 41); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(15, 42); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(16, 31); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(16, 32); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(16, 33); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(16, 34); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(16, 35); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(16, 36); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(16, 37); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(16, 38); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(16, 39); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(16, 40); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(16, 41); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(16, 42); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(17, 31); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(17, 32); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(17, 33); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(17, 34); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(17, 35); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(17, 36); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(17, 37); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(17, 38); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(17, 39); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(17, 40); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(17, 41); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(17, 42); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(18, 31); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(18, 32); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(18, 33); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(18, 34); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(18, 35); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(18, 36); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(18, 37); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(18, 38); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(18, 39); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(18, 40); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(18, 41); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(18, 42); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(19, 31); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(19, 32); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(19, 33); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(19, 34); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(19, 35); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(19, 36); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(19, 37); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(19, 38); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(19, 39); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(19, 40); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(19, 41); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(19, 42); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(20, 31); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(20, 32); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(20, 33); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(20, 34); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(20, 35); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(20, 36); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(20, 37); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(20, 38); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(20, 39); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(20, 40); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(20, 41); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(20, 42); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(21, 31); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(21, 32); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(21, 33); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(21, 34); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(21, 35); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(21, 36); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(21, 37); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(21, 38); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(21, 39); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(21, 40); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(21, 41); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(21, 42); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(14, 43); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(14, 44); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(14, 45); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(14, 46); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(14, 47); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(14, 48); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(14, 49); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(14, 50); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(14, 51); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(14, 52); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(14, 53); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(14, 54); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(15, 43); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(15, 44); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(15, 45); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(15, 46); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(15, 47); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(15, 48); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(15, 49); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(15, 50); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(15, 51); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(15, 52); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(15, 53); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(15, 54); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(16, 43); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(16, 44); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(16, 45); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(16, 46); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(16, 47); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(16, 48); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(16, 49); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(16, 50); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(16, 51); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(16, 52); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(16, 53); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(16, 54); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(17, 43); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(17, 44); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(17, 45); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(17, 46); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(17, 47); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(17, 48); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(17, 49); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(17, 50); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(17, 51); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(17, 52); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(17, 53); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(17, 54); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(18, 43); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(18, 44); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(18, 45); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(18, 46); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(18, 47); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(18, 48); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(18, 49); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(18, 50); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(18, 51); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(18, 52); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(18, 53); + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(18, 54); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(19, 43); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(19, 44); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(19, 45); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(19, 46); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(19, 47); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(19, 48); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(19, 49); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(19, 50); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(19, 51); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(19, 52); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(19, 53); + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(19, 54); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(20, 43); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(20, 44); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(20, 45); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(20, 46); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(20, 47); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(20, 48); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(20, 49); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(20, 50); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(20, 51); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(20, 52); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(20, 53); + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(20, 54); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(21, 43); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(21, 44); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(21, 45); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(21, 46); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(21, 47); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(21, 48); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(21, 49); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(21, 50); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(21, 51); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(21, 52); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(21, 53); + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(21, 54); + } + + return output; + } + + template + inline static bool fkcc( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept + { + std::array, 85> v; + std::array, 264> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -v[1]; + y[8] = 0.000257275745272636 * v[0] + 0.000364961584091189 * v[2]; + y[9] = 0.000257275745272636 * v[1] + 0.000364961584091189 * v[0]; + y[12] = -0.000222724254727364 * v[0] + -0.0542900384159088 * v[2]; + y[13] = -0.000222724254727364 * v[1] + -0.0542900384159088 * v[0]; + y[16] = 0.00218527574527264 * v[0] + -0.0323670384159088 * v[2]; + y[17] = 0.00218527574527264 * v[1] + -0.0323670384159088 * v[0]; + v[3] = cos(x[1]); + v[4] = sin(x[1]); + v[5] = -4.44089209850063e-16 * v[4]; + v[6] = v[0] * v[3] + v[2] * v[5]; + v[7] = -v[4]; + v[8] = -4.44089209850063e-16 * v[3]; + v[9] = v[0] * v[7] + v[2] * v[8]; + y[20] = -0.000270674825549126 * v[6] + 0.00107043164694309 * v[9] + 0.0537209802794456 * v[2]; + v[5] = v[1] * v[3] + v[0] * v[5]; + v[8] = v[1] * v[7] + v[0] * v[8]; + y[21] = -0.000270674825549126 * v[5] + 0.00107043164694309 * v[8] + 0.0537209802794456 * v[0]; + v[4] = -1. * v[4]; + v[3] = -1. * v[3]; + y[22] = 0.333 + -0.000270674825549126 * v[4] + -2.38569076846698e-17 + 0.00107043164694309 * v[3]; + y[24] = -8.36748255491256e-05 * v[6] + -0.140628568353057 * v[9] + 8.99802794456506e-05 * v[2]; + y[25] = -8.36748255491256e-05 * v[5] + -0.140628568353057 * v[8] + 8.99802794456506e-05 * v[0]; + y[26] = 0.333 + -8.36748255491256e-05 * v[4] + -3.99592712011068e-20 + -0.140628568353057 * v[3]; + y[28] = 0.000396325174450874 * v[6] + -0.0708775683530569 * v[9] + 0.0343639802794456 * v[2]; + y[29] = 0.000396325174450874 * v[5] + -0.0708775683530569 * v[8] + 0.0343639802794456 * v[0]; + y[30] = 0.333 + 0.000396325174450874 * v[4] + -1.52606728496022e-17 + -0.0708775683530569 * v[3]; + v[7] = cos(x[2]); + v[10] = sin(x[2]); + v[11] = -4.44089209850063e-16 * v[10]; + v[12] = v[6] * v[7] + v[9] * v[11] + v[2] * v[10]; + v[13] = -v[10]; + v[14] = -4.44089209850063e-16 * v[7]; + v[15] = v[6] * v[13] + v[9] * v[14] + v[2] * v[7]; + v[16] = -1. * v[9] + -4.44089209850063e-16 * v[2]; + v[17] = -0.316 * v[9]; + y[32] = + 0.0824602061868906 * v[12] + 0.051286252776742 * v[15] + -0.00220886971879006 * v[16] + v[17]; + v[18] = v[5] * v[7] + v[8] * v[11] + v[0] * v[10]; + v[19] = v[5] * v[13] + v[8] * v[14] + v[0] * v[7]; + v[20] = -1. * v[8] + -4.44089209850063e-16 * v[0]; + v[21] = -0.316 * v[8]; + y[33] = + 0.0824602061868906 * v[18] + 0.051286252776742 * v[19] + -0.00220886971879006 * v[20] + v[21]; + v[11] = v[4] * v[7] + v[3] * v[11] + -4.44089209850063e-16 * v[10]; + v[14] = v[4] * v[13] + v[3] * v[14] + -4.44089209850063e-16 * v[7]; + v[13] = 1.97215226305253e-31 + -1. * v[3]; + v[7] = 0.333 + -0.316 * v[3]; + y[34] = + 0.0824602061868906 * v[11] + 0.051286252776742 * v[14] + -0.00220886971879006 * v[13] + v[7]; + y[36] = -0.000216793813109399 * v[12] + 0.000107252776741982 * v[15] + + -0.0731218697187901 * v[16] + v[17]; + y[37] = -0.000216793813109399 * v[18] + 0.000107252776741982 * v[19] + + -0.0731218697187901 * v[20] + v[21]; + y[38] = -0.000216793813109399 * v[11] + 0.000107252776741982 * v[14] + + -0.0731218697187901 * v[13] + v[7]; + y[40] = + 0.0557052061868906 * v[12] + 0.037208252776742 * v[15] + -0.0243828697187901 * v[16] + v[17]; + y[41] = + 0.0557052061868906 * v[18] + 0.037208252776742 * v[19] + -0.0243828697187901 * v[20] + v[21]; + y[42] = + 0.0557052061868906 * v[11] + 0.037208252776742 * v[14] + -0.0243828697187901 * v[13] + v[7]; + v[10] = cos(x[3]); + v[22] = sin(x[3]); + v[23] = -4.44089209850063e-16 * v[22]; + v[24] = v[12] * v[10] + v[15] * v[23] + v[16] * v[22]; + v[25] = -v[22]; + v[26] = -4.44089209850063e-16 * v[10]; + v[27] = v[12] * v[25] + v[15] * v[26] + v[16] * v[10]; + v[28] = -1. * v[15] + -4.44089209850063e-16 * v[16]; + v[29] = v[17] + 0.0825 * v[12]; + y[44] = -0.0823836891956329 * v[24] + 0.0737984290605783 * v[27] + -2.6764888167382e-05 * v[28] + + v[29]; + v[30] = v[18] * v[10] + v[19] * v[23] + v[20] * v[22]; + v[31] = v[18] * v[25] + v[19] * v[26] + v[20] * v[10]; + v[32] = -1. * v[19] + -4.44089209850063e-16 * v[20]; + v[33] = v[21] + 0.0825 * v[18]; + y[45] = -0.0823836891956329 * v[30] + 0.0737984290605783 * v[31] + -2.6764888167382e-05 * v[32] + + v[33]; + v[23] = v[11] * v[10] + v[14] * v[23] + v[13] * v[22]; + v[26] = v[11] * v[25] + v[14] * v[26] + v[13] * v[10]; + v[25] = -1. * v[14] + -4.44089209850063e-16 * v[13]; + v[10] = v[7] + 0.0825 * v[11]; + y[46] = -0.0823836891956329 * v[23] + 0.0737984290605783 * v[26] + -2.6764888167382e-05 * v[25] + + v[10]; + y[48] = 0.000159310804367069 * v[24] + -7.85709394216516e-05 * v[27] + + 0.0512292351118326 * v[28] + v[29]; + y[49] = 0.000159310804367069 * v[30] + -7.85709394216516e-05 * v[31] + + 0.0512292351118326 * v[32] + v[33]; + y[50] = 0.000159310804367069 * v[23] + -7.85709394216516e-05 * v[26] + + 0.0512292351118326 * v[25] + v[10]; + y[52] = + -0.0387426891956329 * v[24] + 0.0291004290605783 * v[27] + 0.0302542351118326 * v[28] + v[29]; + y[53] = + -0.0387426891956329 * v[30] + 0.0291004290605783 * v[31] + 0.0302542351118326 * v[32] + v[33]; + y[54] = + -0.0387426891956329 * v[23] + 0.0291004290605783 * v[26] + 0.0302542351118326 * v[25] + v[10]; + v[22] = cos(x[4]); + v[34] = sin(x[4]); + v[35] = -4.44089209850063e-16 * v[34]; + v[36] = -1. * v[34]; + v[37] = v[24] * v[22] + v[27] * v[35] + v[28] * v[36]; + v[34] = -v[34]; + v[38] = -4.44089209850063e-16 * v[22]; + v[39] = -1. * v[22]; + v[40] = v[24] * v[34] + v[27] * v[38] + v[28] * v[39]; + v[41] = v[27] + -4.44089209850063e-16 * v[28]; + v[42] = v[29] + -0.0825 * v[24] + 0.384 * v[27]; + y[56] = -0.000434186588168144 * v[37] + 0.066180057600975 * v[40] + + -0.000121777759432798 * v[41] + v[42]; + v[43] = v[30] * v[22] + v[31] * v[35] + v[32] * v[36]; + v[44] = v[30] * v[34] + v[31] * v[38] + v[32] * v[39]; + v[45] = v[31] + -4.44089209850063e-16 * v[32]; + v[46] = v[33] + -0.0825 * v[30] + 0.384 * v[31]; + y[57] = -0.000434186588168144 * v[43] + 0.066180057600975 * v[44] + + -0.000121777759432798 * v[45] + v[46]; + v[36] = v[23] * v[22] + v[26] * v[35] + v[25] * v[36]; + v[39] = v[23] * v[34] + v[26] * v[38] + v[25] * v[39]; + v[38] = v[26] + -4.44089209850063e-16 * v[25]; + v[34] = v[10] + -0.0825 * v[23] + 0.384 * v[26]; + y[58] = -0.000434186588168144 * v[36] + 0.066180057600975 * v[39] + + -0.000121777759432798 * v[38] + v[34]; + y[60] = 0.000235813411831856 * v[37] + 0.088863057600975 * v[40] + -0.0383667777594328 * v[41] + + v[42]; + y[61] = 0.000235813411831856 * v[43] + 0.088863057600975 * v[44] + -0.0383667777594328 * v[45] + + v[46]; + y[62] = 0.000235813411831856 * v[36] + 0.088863057600975 * v[39] + -0.0383667777594328 * v[38] + + v[34]; + y[64] = -2.21865881681442e-05 * v[37] + 0.090490057600975 * v[40] + -0.0906467777594328 * v[41] + + v[42]; + y[65] = -2.21865881681442e-05 * v[43] + 0.090490057600975 * v[44] + -0.0906467777594328 * v[45] + + v[46]; + y[66] = -2.21865881681442e-05 * v[36] + 0.090490057600975 * v[39] + -0.0906467777594328 * v[38] + + v[34]; + y[68] = + -0.00225518658816814 * v[37] + 0.082432057600975 * v[40] + -0.129776777759433 * v[41] + v[42]; + y[69] = + -0.00225518658816814 * v[43] + 0.082432057600975 * v[44] + -0.129776777759433 * v[45] + v[46]; + y[70] = + -0.00225518658816814 * v[36] + 0.082432057600975 * v[39] + -0.129776777759433 * v[38] + v[34]; + y[72] = + 0.00197281341183186 * v[37] + 0.056373057600975 * v[40] + -0.183438777759433 * v[41] + v[42]; + y[73] = + 0.00197281341183186 * v[43] + 0.056373057600975 * v[44] + -0.183438777759433 * v[45] + v[46]; + y[74] = + 0.00197281341183186 * v[36] + 0.056373057600975 * v[39] + -0.183438777759433 * v[38] + v[34]; + y[76] = + -0.00659618658816814 * v[37] + 0.016208057600975 * v[40] + -0.214312777759433 * v[41] + v[42]; + y[77] = + -0.00659618658816814 * v[43] + 0.016208057600975 * v[44] + -0.214312777759433 * v[45] + v[46]; + y[78] = + -0.00659618658816814 * v[36] + 0.016208057600975 * v[39] + -0.214312777759433 * v[38] + v[34]; + y[80] = 0.0130218134118319 * v[37] + -0.00144994239902496 * v[40] + -0.219200777759433 * v[41] + + v[42]; + y[81] = 0.0130218134118319 * v[43] + -0.00144994239902496 * v[44] + -0.219200777759433 * v[45] + + v[46]; + y[82] = 0.0130218134118319 * v[36] + -0.00144994239902496 * v[39] + -0.219200777759433 * v[38] + + v[34]; + y[84] = -0.00891518658816814 * v[37] + -0.00937694239902497 * v[40] + -0.221168777759433 * v[41] + + v[42]; + y[85] = -0.00891518658816814 * v[43] + -0.00937694239902497 * v[44] + -0.221168777759433 * v[45] + + v[46]; + y[86] = -0.00891518658816814 * v[36] + -0.00937694239902497 * v[39] + -0.221168777759433 * v[38] + + v[34]; + v[35] = cos(x[5]); + v[22] = sin(x[5]); + v[47] = -4.44089209850063e-16 * v[22]; + v[48] = v[37] * v[35] + v[40] * v[47] + v[41] * v[22]; + v[49] = -v[22]; + v[50] = -4.44089209850063e-16 * v[35]; + v[51] = v[37] * v[49] + v[40] * v[50] + v[41] * v[35]; + v[52] = -1. * v[40] + -4.44089209850063e-16 * v[41]; + y[88] = 0.0885216327220502 * v[48] + 0.0116328354930215 * v[51] + -0.00106414643673269 * v[52] + + v[42]; + v[53] = v[43] * v[35] + v[44] * v[47] + v[45] * v[22]; + v[54] = v[43] * v[49] + v[44] * v[50] + v[45] * v[35]; + v[55] = -1. * v[44] + -4.44089209850063e-16 * v[45]; + y[89] = 0.0885216327220502 * v[53] + 0.0116328354930215 * v[54] + -0.00106414643673269 * v[55] + + v[46]; + v[47] = v[36] * v[35] + v[39] * v[47] + v[38] * v[22]; + v[50] = v[36] * v[49] + v[39] * v[50] + v[38] * v[35]; + v[49] = -1. * v[39] + -4.44089209850063e-16 * v[38]; + y[90] = 0.0885216327220502 * v[47] + 0.0116328354930215 * v[50] + -0.00106414643673269 * v[49] + + v[34]; + y[92] = + 0.0119076327220502 * v[48] + 0.0110828354930215 * v[51] + 0.0174398535632673 * v[52] + v[42]; + y[93] = + 0.0119076327220502 * v[53] + 0.0110828354930215 * v[54] + 0.0174398535632673 * v[55] + v[46]; + y[94] = + 0.0119076327220502 * v[47] + 0.0110828354930215 * v[50] + 0.0174398535632673 * v[49] + v[34]; + v[35] = cos(x[6]); + v[22] = sin(x[6]); + v[56] = -4.44089209850063e-16 * v[22]; + v[57] = v[48] * v[35] + v[51] * v[56] + v[52] * v[22]; + v[58] = -v[22]; + v[59] = -4.44089209850063e-16 * v[35]; + v[60] = v[48] * v[58] + v[51] * v[59] + v[52] * v[35]; + v[61] = -1. * v[51] + -4.44089209850063e-16 * v[52]; + v[62] = v[42] + 0.088 * v[48]; + y[96] = 0.000103343574285507 * v[57] + -0.000882708185553551 * v[60] + + 0.0776681043272018 * v[61] + v[62]; + v[63] = v[53] * v[35] + v[54] * v[56] + v[55] * v[22]; + v[64] = v[53] * v[58] + v[54] * v[59] + v[55] * v[35]; + v[65] = -1. * v[54] + -4.44089209850063e-16 * v[55]; + v[66] = v[46] + 0.088 * v[53]; + y[97] = 0.000103343574285507 * v[63] + -0.000882708185553551 * v[64] + + 0.0776681043272018 * v[65] + v[66]; + v[56] = v[47] * v[35] + v[50] * v[56] + v[49] * v[22]; + v[59] = v[47] * v[58] + v[50] * v[59] + v[49] * v[35]; + v[58] = -1. * v[50] + -4.44089209850063e-16 * v[49]; + v[35] = v[34] + 0.088 * v[47]; + y[98] = 0.000103343574285507 * v[56] + -0.000882708185553551 * v[59] + + 0.0776681043272018 * v[58] + v[35]; + y[100] = + 0.0398483435742855 * v[57] + 0.0399532918144464 * v[60] + 0.0790931043272018 * v[61] + v[62]; + y[101] = + 0.0398483435742855 * v[63] + 0.0399532918144464 * v[64] + 0.0790931043272018 * v[65] + v[66]; + y[102] = + 0.0398483435742855 * v[56] + 0.0399532918144464 * v[59] + 0.0790931043272018 * v[58] + v[35]; + y[104] = + 0.0526858266329919 * v[57] + 0.0525558145818925 * v[60] + 0.134520674433231 * v[61] + v[62]; + y[105] = + 0.0526858266329919 * v[63] + 0.0525558145818925 * v[64] + 0.134520674433231 * v[65] + v[66]; + y[106] = + 0.0526858266329919 * v[56] + 0.0525558145818925 * v[59] + 0.134520674433231 * v[58] + v[35]; + y[108] = + 0.0239122374929489 * v[57] + 0.0238755635369661 * v[60] + 0.130450674433231 * v[61] + v[62]; + y[109] = + 0.0239122374929489 * v[63] + 0.0238755635369661 * v[64] + 0.130450674433231 * v[65] + v[66]; + y[110] = + 0.0239122374929489 * v[56] + 0.0238755635369661 * v[59] + 0.130450674433231 * v[58] + v[35]; + y[112] = -0.00481963234700404 * v[57] + -0.00482236517748993 * v[60] + 0.127964674433231 * v[61] + + v[62]; + y[113] = -0.00481963234700404 * v[63] + -0.00482236517748993 * v[64] + 0.127964674433231 * v[65] + + v[66]; + y[114] = -0.00481963234700404 * v[56] + -0.00482236517748993 * v[59] + 0.127964674433231 * v[58] + + v[35]; + y[116] = + -0.0431879534009673 * v[57] + -0.0432910953943817 * v[60] + 0.146945674433231 * v[61] + v[62]; + y[117] = + -0.0431879534009673 * v[63] + -0.0432910953943817 * v[64] + 0.146945674433231 * v[65] + v[66]; + y[118] = + -0.0431879534009673 * v[56] + -0.0432910953943817 * v[59] + 0.146945674433231 * v[58] + v[35]; + y[120] = + -0.0443419516678637 * v[57] + -0.0443658977017852 * v[60] + 0.113249674433231 * v[61] + v[62]; + y[121] = + -0.0443419516678637 * v[63] + -0.0443658977017852 * v[64] + 0.113249674433231 * v[65] + v[66]; + y[122] = + -0.0443419516678637 * v[56] + -0.0443658977017852 * v[59] + 0.113249674433231 * v[58] + v[35]; + v[22] = 0.707106781186547 * v[57] + -0.707106781186548 * v[60]; + v[67] = 0.707106781186548 * v[57] + 0.707106781186547 * v[60]; + v[68] = 0.707106781186548 * x[7]; + v[69] = 0.707106781186547 * x[7]; + v[70] = v[62] + v[57] * v[68] + v[60] * v[69] + 0.1654 * v[61]; + y[124] = 0.003501 * v[22] + 0.0185 * v[67] + 0.011 * v[61] + v[70]; + v[71] = 0.707106781186547 * v[63] + -0.707106781186548 * v[64]; + v[72] = 0.707106781186548 * v[63] + 0.707106781186547 * v[64]; + v[73] = v[66] + v[63] * v[68] + v[64] * v[69] + 0.1654 * v[65]; + y[125] = 0.003501 * v[71] + 0.0185 * v[72] + 0.011 * v[65] + v[73]; + v[74] = 0.707106781186547 * v[56] + -0.707106781186548 * v[59]; + v[75] = 0.707106781186548 * v[56] + 0.707106781186547 * v[59]; + v[69] = v[35] + v[56] * v[68] + v[59] * v[69] + 0.1654 * v[58]; + y[126] = 0.003501 * v[74] + 0.0185 * v[75] + 0.011 * v[58] + v[69]; + y[128] = -0.0035 * v[22] + 0.0185 * v[67] + 0.011 * v[61] + v[70]; + y[129] = -0.0035 * v[71] + 0.0185 * v[72] + 0.011 * v[65] + v[73]; + y[130] = -0.0035 * v[74] + 0.0185 * v[75] + 0.011 * v[58] + v[69]; + y[132] = 0.007892 * v[22] + 0.004664 * v[67] + 0.0022 * v[61] + v[70]; + y[133] = 0.007892 * v[71] + 0.004664 * v[72] + 0.0022 * v[65] + v[73]; + y[134] = 0.007892 * v[74] + 0.004664 * v[75] + 0.0022 * v[58] + v[69]; + y[136] = 0.007396 * v[22] + 0.009148 * v[67] + 0.0022 * v[61] + v[70]; + y[137] = 0.007396 * v[71] + 0.009148 * v[72] + 0.0022 * v[65] + v[73]; + y[138] = 0.007396 * v[74] + 0.009148 * v[75] + 0.0022 * v[58] + v[69]; + y[140] = 0.000716 * v[22] + 0.0043 * v[67] + 0.0022 * v[61] + v[70]; + y[141] = 0.000716 * v[71] + 0.0043 * v[72] + 0.0022 * v[65] + v[73]; + y[142] = 0.000716 * v[74] + 0.0043 * v[75] + 0.0022 * v[58] + v[69]; + y[144] = -0.000175 * v[22] + 0.008894 * v[67] + 0.0022 * v[61] + v[70]; + y[145] = -0.000175 * v[71] + 0.008894 * v[72] + 0.0022 * v[65] + v[73]; + y[146] = -0.000175 * v[74] + 0.008894 * v[75] + 0.0022 * v[58] + v[69]; + y[148] = -0.007202 * v[22] + 0.004383 * v[67] + 0.0022 * v[61] + v[70]; + y[149] = -0.007202 * v[71] + 0.004383 * v[72] + 0.0022 * v[65] + v[73]; + y[150] = -0.007202 * v[74] + 0.004383 * v[75] + 0.0022 * v[58] + v[69]; + y[152] = -0.007549 * v[22] + 0.0089 * v[67] + 0.0022 * v[61] + v[70]; + y[153] = -0.007549 * v[71] + 0.0089 * v[72] + 0.0022 * v[65] + v[73]; + y[154] = -0.007549 * v[74] + 0.0089 * v[75] + 0.0022 * v[58] + v[69]; + y[156] = 1.6e-05 * v[22] + 0.011945 * v[67] + 0.0352 * v[61] + v[70]; + y[157] = 1.6e-05 * v[71] + 0.011945 * v[72] + 0.0352 * v[65] + v[73]; + y[158] = 1.6e-05 * v[74] + 0.011945 * v[75] + 0.0352 * v[58] + v[69]; + y[160] = -0.004842 * v[22] + 0.017471 * v[67] + 0.025629 * v[61] + v[70]; + y[161] = -0.004842 * v[71] + 0.017471 * v[72] + 0.025629 * v[65] + v[73]; + y[162] = -0.004842 * v[74] + 0.017471 * v[75] + 0.025629 * v[58] + v[69]; + y[164] = 0.004004 * v[22] + 0.017923 * v[67] + 0.024847 * v[61] + v[70]; + y[165] = 0.004004 * v[71] + 0.017923 * v[72] + 0.024847 * v[65] + v[73]; + y[166] = 0.004004 * v[74] + 0.017923 * v[75] + 0.024847 * v[58] + v[69]; + y[168] = 0.00758 * v[67] + 0.04525 * v[61] + v[70]; + y[169] = 0.00758 * v[72] + 0.04525 * v[65] + v[73]; + y[170] = 0.00758 * v[75] + 0.04525 * v[58] + v[69]; + v[68] = -0.707106781186547 * v[57] + 0.707106781186548 * v[60]; + v[76] = -0.707106781186548 * v[57] + -0.707106781186547 * v[60]; + v[77] = -0.707106781186548 * x[8]; + v[78] = -0.707106781186547 * x[8]; + v[79] = v[62] + v[57] * v[77] + v[60] * v[78] + 0.1654 * v[61]; + y[172] = 0.003501 * v[68] + 0.0185 * v[76] + 0.011 * v[61] + v[79]; + v[80] = -0.707106781186547 * v[63] + 0.707106781186548 * v[64]; + v[81] = -0.707106781186548 * v[63] + -0.707106781186547 * v[64]; + v[82] = v[66] + v[63] * v[77] + v[64] * v[78] + 0.1654 * v[65]; + y[173] = 0.003501 * v[80] + 0.0185 * v[81] + 0.011 * v[65] + v[82]; + v[83] = -0.707106781186547 * v[56] + 0.707106781186548 * v[59]; + v[84] = -0.707106781186548 * v[56] + -0.707106781186547 * v[59]; + v[78] = v[35] + v[56] * v[77] + v[59] * v[78] + 0.1654 * v[58]; + y[174] = 0.003501 * v[83] + 0.0185 * v[84] + 0.011 * v[58] + v[78]; + y[176] = -0.0035 * v[68] + 0.0185 * v[76] + 0.011 * v[61] + v[79]; + y[177] = -0.0035 * v[80] + 0.0185 * v[81] + 0.011 * v[65] + v[82]; + y[178] = -0.0035 * v[83] + 0.0185 * v[84] + 0.011 * v[58] + v[78]; + y[180] = 0.007892 * v[68] + 0.004664 * v[76] + 0.0022 * v[61] + v[79]; + y[181] = 0.007892 * v[80] + 0.004664 * v[81] + 0.0022 * v[65] + v[82]; + y[182] = 0.007892 * v[83] + 0.004664 * v[84] + 0.0022 * v[58] + v[78]; + y[184] = 0.007396 * v[68] + 0.009148 * v[76] + 0.0022 * v[61] + v[79]; + y[185] = 0.007396 * v[80] + 0.009148 * v[81] + 0.0022 * v[65] + v[82]; + y[186] = 0.007396 * v[83] + 0.009148 * v[84] + 0.0022 * v[58] + v[78]; + y[188] = 0.000716 * v[68] + 0.0043 * v[76] + 0.0022 * v[61] + v[79]; + y[189] = 0.000716 * v[80] + 0.0043 * v[81] + 0.0022 * v[65] + v[82]; + y[190] = 0.000716 * v[83] + 0.0043 * v[84] + 0.0022 * v[58] + v[78]; + y[192] = -0.000175 * v[68] + 0.008894 * v[76] + 0.0022 * v[61] + v[79]; + y[193] = -0.000175 * v[80] + 0.008894 * v[81] + 0.0022 * v[65] + v[82]; + y[194] = -0.000175 * v[83] + 0.008894 * v[84] + 0.0022 * v[58] + v[78]; + y[196] = -0.007202 * v[68] + 0.004383 * v[76] + 0.0022 * v[61] + v[79]; + y[197] = -0.007202 * v[80] + 0.004383 * v[81] + 0.0022 * v[65] + v[82]; + y[198] = -0.007202 * v[83] + 0.004383 * v[84] + 0.0022 * v[58] + v[78]; + y[200] = -0.007549 * v[68] + 0.0089 * v[76] + 0.0022 * v[61] + v[79]; + y[201] = -0.007549 * v[80] + 0.0089 * v[81] + 0.0022 * v[65] + v[82]; + y[202] = -0.007549 * v[83] + 0.0089 * v[84] + 0.0022 * v[58] + v[78]; + y[204] = + 0.00408605801887313 * v[68] + 0.0136422240177223 * v[76] + 0.0314984681832196 * v[61] + v[79]; + y[205] = + 0.00408605801887313 * v[80] + 0.0136422240177223 * v[81] + 0.0314984681832196 * v[65] + v[82]; + y[206] = + 0.00408605801887313 * v[83] + 0.0136422240177223 * v[84] + 0.0314984681832196 * v[58] + v[78]; + y[208] = 5.80188731266046e-08 * v[68] + 0.0195482240177223 * v[76] + 0.0209754681832196 * v[61] + + v[79]; + y[209] = 5.80188731266046e-08 * v[80] + 0.0195482240177223 * v[81] + 0.0209754681832196 * v[65] + + v[82]; + y[210] = 5.80188731266046e-08 * v[83] + 0.0195482240177223 * v[84] + 0.0209754681832196 * v[58] + + v[78]; + y[212] = -0.00501194198112687 * v[68] + 0.0137262240177223 * v[76] + 0.0309874681832196 * v[61] + + v[79]; + y[213] = -0.00501194198112687 * v[80] + 0.0137262240177223 * v[81] + 0.0309874681832196 * v[65] + + v[82]; + y[214] = -0.00501194198112687 * v[83] + 0.0137262240177223 * v[84] + 0.0309874681832196 * v[58] + + v[78]; + y[216] = 0.00758 * v[76] + 0.04525 * v[61] + v[79]; + y[217] = 0.00758 * v[81] + 0.04525 * v[65] + v[82]; + y[218] = 0.00758 * v[84] + 0.04525 * v[58] + v[78]; + y[224] = 1.62964861374348e-05 * v[0] + -0.0270740408450365 * v[2]; + y[225] = 1.62964861374348e-05 * v[1] + -0.0270740408450365 * v[0]; + y[228] = -0.000176759494934231 * v[6] + -0.0700937807559967 * v[9] + 0.0267863664776087 * v[2]; + y[229] = -0.000176759494934231 * v[5] + -0.0700937807559967 * v[8] + 0.0267863664776087 * v[0]; + y[230] = + 0.333 + -0.000176759494934231 * v[4] + -1.18955363237954e-17 + -0.0700937807559967 * v[3]; + y[232] = + 0.0414390936493874 * v[12] + 0.025893222540617 * v[15] + -0.0373931415379047 * v[16] + v[17]; + y[233] = + 0.0414390936493874 * v[18] + 0.025893222540617 * v[19] + -0.0373931415379047 * v[20] + v[21]; + y[234] = + 0.0414390936493874 * v[11] + 0.025893222540617 * v[14] + -0.0373931415379047 * v[13] + v[7]; + y[236] = + -0.0411574989557266 * v[24] + 0.0369004793465137 * v[27] + 0.0255731008946896 * v[28] + v[29]; + y[237] = + -0.0411574989557266 * v[30] + 0.0369004793465137 * v[31] + 0.0255731008946896 * v[32] + v[33]; + y[238] = + -0.0411574989557266 * v[23] + 0.0369004793465137 * v[26] + 0.0255731008946896 * v[25] + v[10]; + y[240] = -0.00449681794270873 * v[37] + 0.0299861840903759 * v[40] + -0.106009349226952 * v[41] + + v[42]; + y[241] = -0.00449681794270873 * v[43] + 0.0299861840903759 * v[44] + -0.106009349226952 * v[45] + + v[46]; + y[242] = -0.00449681794270873 * v[36] + 0.0299861840903759 * v[39] + -0.106009349226952 * v[38] + + v[34]; + y[244] = + 0.0530733652412891 * v[48] + 0.0113783581182361 * v[51] + 0.00749740563333035 * v[52] + v[42]; + y[245] = + 0.0530733652412891 * v[53] + 0.0113783581182361 * v[54] + 0.00749740563333035 * v[55] + v[46]; + y[246] = + 0.0530733652412891 * v[47] + 0.0113783581182361 * v[50] + 0.00749740563333035 * v[49] + v[34]; + y[248] = + 0.0158034916967154 * v[57] + 0.0152484085410833 * v[60] + 0.0782310143113136 * v[61] + v[62]; + y[249] = + 0.0158034916967154 * v[63] + 0.0152484085410833 * v[64] + 0.0782310143113136 * v[65] + v[66]; + y[250] = + 0.0158034916967154 * v[56] + 0.0152484085410833 * v[59] + 0.0782310143113136 * v[58] + v[35]; + y[252] = + 0.00388643983751535 * v[57] + 0.00380042637698352 * v[60] + 0.127833276987076 * v[61] + v[62]; + y[253] = + 0.00388643983751535 * v[63] + 0.00380042637698352 * v[64] + 0.127833276987076 * v[65] + v[66]; + y[254] = + 0.00388643983751535 * v[56] + 0.00380042637698352 * v[59] + 0.127833276987076 * v[58] + v[35]; + y[256] = -2.10780513043574e-06 * v[22] + 0.0129222339019179 * v[67] + 0.0280418023467064 * v[61] + + v[70]; + y[257] = -2.10780513043574e-06 * v[71] + 0.0129222339019179 * v[72] + 0.0280418023467064 * v[65] + + v[73]; + y[258] = -2.10780513043574e-06 * v[74] + 0.0129222339019179 * v[75] + 0.0280418023467064 * v[58] + + v[69]; + y[260] = -2.10780513043574e-06 * v[68] + 0.0129222339019179 * v[76] + 0.0280418023467064 * v[61] + + v[79]; + y[261] = -2.10780513043574e-06 * v[80] + 0.0129222339019179 * v[81] + 0.0280418023467064 * v[65] + + v[82]; + y[262] = -2.10780513043574e-06 * v[83] + 0.0129222339019179 * v[84] + 0.0280418023467064 * v[58] + + v[78]; + // dependent variables without operations + y[0] = -0.0860495389437377; + y[1] = 0.0036964648894988; + y[2] = 0.0394402485578895; + y[3] = 0.0936459973454475; + y[4] = -0.0156275389437377; + y[5] = 0.000401464889498803; + y[6] = 0.0662522485578895; + y[7] = 0.117857001721859; + y[10] = 0.193462213836312; + y[11] = 0.0765959993004799; + y[14] = 0.333404213836312; + y[15] = 0.0772090032696724; + y[18] = 0.259795213836312; + y[19] = 0.0638410001993179; + y[23] = 0.0768160000443459; + y[27] = 0.0774890035390854; + y[31] = 0.0620479993522167; + y[35] = 0.0759430006146431; + y[39] = 0.0750190019607544; + y[43] = 0.0620479993522167; + y[47] = 0.0754949972033501; + y[51] = 0.0753609985113144; + y[55] = 0.0551490001380444; + y[59] = 0.0688280016183853; + y[63] = 0.048845998942852; + y[67] = 0.0370859988033772; + y[71] = 0.0385459996759892; + y[75] = 0.0522850006818771; + y[79] = 0.0658399984240532; + y[83] = 0.0613869987428188; + y[87] = 0.0590230002999306; + y[91] = 0.0827130004763603; + y[95] = 0.0768309980630875; + y[99] = 0.0545630007982254; + y[103] = 0.0425949990749359; + y[107] = 0.0443940013647079; + y[111] = 0.0489780008792877; + y[115] = 0.0503519997000694; + y[119] = 0.0444249995052814; + y[123] = 0.0439950004220009; + y[127] = 0.0145770004019141; + y[131] = 0.0145779997110367; + y[135] = 0.00429000006988645; + y[139] = 0.00456399982795119; + y[143] = 0.00486999982967973; + y[147] = 0.00475199986249208; + y[151] = 0.00469500012695789; + y[155] = 0.00457100011408329; + y[159] = 0.0101910000666976; + y[163] = 0.0100819999352098; + y[167] = 0.00970400031656027; + y[171] = 0.0148290004581213; + y[175] = 0.0145770004019141; + y[179] = 0.0145779997110367; + y[183] = 0.00429000006988645; + y[187] = 0.00456399982795119; + y[191] = 0.00486999982967973; + y[195] = 0.00475199986249208; + y[199] = 0.00469500012695789; + y[203] = 0.00457100011408329; + y[207] = 0.0101370001211762; + y[211] = 0.0107009997591376; + y[215] = 0.0105830002576113; + y[219] = 0.0148290004581213; + y[220] = -0.0395360700786114; + y[221] = 0.00152012973558158; + y[222] = 0.0571494735777378; + y[223] = 0.143464222550392; + y[226] = 0.263718712508678; + y[227] = 0.152021005749702; + y[231] = 0.15290692448616; + y[235] = 0.13565456867218; + y[239] = 0.136457368731499; + y[243] = 0.180804252624512; + y[247] = 0.119181409478188; + y[251] = 0.0770802050828934; + y[255] = 0.113699048757553; + y[259] = 0.0328473672270775; + y[263] = 0.0328473672270775; + + // + // environment vs. robot collisions + // + + // fr3_rightfinger + if (sphere_environment_in_collision(environment, y[260], y[261], y[262], y[263])) + { + if (sphere_environment_in_collision(environment, y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_leftfinger + if (sphere_environment_in_collision(environment, y[256], y[257], y[258], y[259])) + { + if (sphere_environment_in_collision(environment, y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_hand + if (sphere_environment_in_collision(environment, y[252], y[253], y[254], y[255])) + { + if (sphere_environment_in_collision(environment, y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link7 + if (sphere_environment_in_collision(environment, y[248], y[249], y[250], y[251])) + { + if (sphere_environment_in_collision(environment, y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link6 + if (sphere_environment_in_collision(environment, y[244], y[245], y[246], y[247])) + { + if (sphere_environment_in_collision(environment, y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[92], y[93], y[94], y[95])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link5 + if (sphere_environment_in_collision(environment, y[240], y[241], y[242], y[243])) + { + if (sphere_environment_in_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link4 + if (sphere_environment_in_collision(environment, y[236], y[237], y[238], y[239])) + { + if (sphere_environment_in_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link3 + if (sphere_environment_in_collision(environment, y[232], y[233], y[234], y[235])) + { + if (sphere_environment_in_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link2 + if (sphere_environment_in_collision(environment, y[228], y[229], y[230], y[231])) + { + if (sphere_environment_in_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link1 + if (sphere_environment_in_collision(environment, y[224], y[225], y[226], y[227])) + { + if (sphere_environment_in_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link0 + if (sphere_environment_in_collision(environment, y[220], y[221], y[222], y[223])) + { + if (sphere_environment_in_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + } + + // + // robot self-collisions + // + + // fr3_link0 vs. fr3_link5 + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[240], y[241], y[242], y[243])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // fr3_link0 vs. fr3_link6 + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[244], y[245], y[246], y[247])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + return false; + } + } + + // fr3_link0 vs. fr3_link7 + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[248], y[249], y[250], y[251])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // fr3_link0 vs. fr3_hand + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link0 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link0 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // fr3_link1 vs. fr3_link5 + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[240], y[241], y[242], y[243])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // fr3_link1 vs. fr3_link6 + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[244], y[245], y[246], y[247])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + return false; + } + } + + // fr3_link1 vs. fr3_link7 + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[248], y[249], y[250], y[251])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // fr3_link1 vs. fr3_hand + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link1 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link1 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // fr3_link2 vs. fr3_link5 + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[240], y[241], y[242], y[243])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // fr3_link2 vs. fr3_link7 + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[248], y[249], y[250], y[251])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // fr3_link2 vs. fr3_hand + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link2 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link2 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // fr3_link5 vs. fr3_hand + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link5 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link5 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + return true; + } + + template + inline static bool fkcc_attach( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept + { + std::array, 82> v; + std::array, 276> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -v[1]; + y[8] = 0.000257275745272636 * v[0] + 0.000364961584091189 * v[2]; + y[9] = 0.000257275745272636 * v[1] + 0.000364961584091189 * v[0]; + y[12] = -0.000222724254727364 * v[0] + -0.0542900384159088 * v[2]; + y[13] = -0.000222724254727364 * v[1] + -0.0542900384159088 * v[0]; + y[16] = 0.00218527574527264 * v[0] + -0.0323670384159088 * v[2]; + y[17] = 0.00218527574527264 * v[1] + -0.0323670384159088 * v[0]; + v[3] = cos(x[1]); + v[4] = sin(x[1]); + v[5] = -4.44089209850063e-16 * v[4]; + v[6] = v[0] * v[3] + v[2] * v[5]; + v[7] = -v[4]; + v[8] = -4.44089209850063e-16 * v[3]; + v[9] = v[0] * v[7] + v[2] * v[8]; + y[20] = -0.000270674825549126 * v[6] + 0.00107043164694309 * v[9] + 0.0537209802794456 * v[2]; + v[5] = v[1] * v[3] + v[0] * v[5]; + v[8] = v[1] * v[7] + v[0] * v[8]; + y[21] = -0.000270674825549126 * v[5] + 0.00107043164694309 * v[8] + 0.0537209802794456 * v[0]; + v[4] = -1. * v[4]; + v[3] = -1. * v[3]; + y[22] = 0.333 + -0.000270674825549126 * v[4] + -2.38569076846698e-17 + 0.00107043164694309 * v[3]; + y[24] = -8.36748255491256e-05 * v[6] + -0.140628568353057 * v[9] + 8.99802794456506e-05 * v[2]; + y[25] = -8.36748255491256e-05 * v[5] + -0.140628568353057 * v[8] + 8.99802794456506e-05 * v[0]; + y[26] = 0.333 + -8.36748255491256e-05 * v[4] + -3.99592712011068e-20 + -0.140628568353057 * v[3]; + y[28] = 0.000396325174450874 * v[6] + -0.0708775683530569 * v[9] + 0.0343639802794456 * v[2]; + y[29] = 0.000396325174450874 * v[5] + -0.0708775683530569 * v[8] + 0.0343639802794456 * v[0]; + y[30] = 0.333 + 0.000396325174450874 * v[4] + -1.52606728496022e-17 + -0.0708775683530569 * v[3]; + v[7] = cos(x[2]); + v[10] = sin(x[2]); + v[11] = -4.44089209850063e-16 * v[10]; + v[12] = v[6] * v[7] + v[9] * v[11] + v[2] * v[10]; + v[13] = -v[10]; + v[14] = -4.44089209850063e-16 * v[7]; + v[15] = v[6] * v[13] + v[9] * v[14] + v[2] * v[7]; + v[16] = -1. * v[9] + -4.44089209850063e-16 * v[2]; + v[17] = -0.316 * v[9]; + y[32] = + 0.0824602061868906 * v[12] + 0.051286252776742 * v[15] + -0.00220886971879006 * v[16] + v[17]; + v[18] = v[5] * v[7] + v[8] * v[11] + v[0] * v[10]; + v[19] = v[5] * v[13] + v[8] * v[14] + v[0] * v[7]; + v[20] = -1. * v[8] + -4.44089209850063e-16 * v[0]; + v[21] = -0.316 * v[8]; + y[33] = + 0.0824602061868906 * v[18] + 0.051286252776742 * v[19] + -0.00220886971879006 * v[20] + v[21]; + v[11] = v[4] * v[7] + v[3] * v[11] + -4.44089209850063e-16 * v[10]; + v[14] = v[4] * v[13] + v[3] * v[14] + -4.44089209850063e-16 * v[7]; + v[13] = 1.97215226305253e-31 + -1. * v[3]; + v[7] = 0.333 + -0.316 * v[3]; + y[34] = + 0.0824602061868906 * v[11] + 0.051286252776742 * v[14] + -0.00220886971879006 * v[13] + v[7]; + y[36] = -0.000216793813109399 * v[12] + 0.000107252776741982 * v[15] + + -0.0731218697187901 * v[16] + v[17]; + y[37] = -0.000216793813109399 * v[18] + 0.000107252776741982 * v[19] + + -0.0731218697187901 * v[20] + v[21]; + y[38] = -0.000216793813109399 * v[11] + 0.000107252776741982 * v[14] + + -0.0731218697187901 * v[13] + v[7]; + y[40] = + 0.0557052061868906 * v[12] + 0.037208252776742 * v[15] + -0.0243828697187901 * v[16] + v[17]; + y[41] = + 0.0557052061868906 * v[18] + 0.037208252776742 * v[19] + -0.0243828697187901 * v[20] + v[21]; + y[42] = + 0.0557052061868906 * v[11] + 0.037208252776742 * v[14] + -0.0243828697187901 * v[13] + v[7]; + v[10] = cos(x[3]); + v[22] = sin(x[3]); + v[23] = -4.44089209850063e-16 * v[22]; + v[24] = v[12] * v[10] + v[15] * v[23] + v[16] * v[22]; + v[25] = -v[22]; + v[26] = -4.44089209850063e-16 * v[10]; + v[27] = v[12] * v[25] + v[15] * v[26] + v[16] * v[10]; + v[28] = -1. * v[15] + -4.44089209850063e-16 * v[16]; + v[29] = v[17] + 0.0825 * v[12]; + y[44] = -0.0823836891956329 * v[24] + 0.0737984290605783 * v[27] + -2.6764888167382e-05 * v[28] + + v[29]; + v[30] = v[18] * v[10] + v[19] * v[23] + v[20] * v[22]; + v[31] = v[18] * v[25] + v[19] * v[26] + v[20] * v[10]; + v[32] = -1. * v[19] + -4.44089209850063e-16 * v[20]; + v[33] = v[21] + 0.0825 * v[18]; + y[45] = -0.0823836891956329 * v[30] + 0.0737984290605783 * v[31] + -2.6764888167382e-05 * v[32] + + v[33]; + v[23] = v[11] * v[10] + v[14] * v[23] + v[13] * v[22]; + v[26] = v[11] * v[25] + v[14] * v[26] + v[13] * v[10]; + v[25] = -1. * v[14] + -4.44089209850063e-16 * v[13]; + v[10] = v[7] + 0.0825 * v[11]; + y[46] = -0.0823836891956329 * v[23] + 0.0737984290605783 * v[26] + -2.6764888167382e-05 * v[25] + + v[10]; + y[48] = 0.000159310804367069 * v[24] + -7.85709394216516e-05 * v[27] + + 0.0512292351118326 * v[28] + v[29]; + y[49] = 0.000159310804367069 * v[30] + -7.85709394216516e-05 * v[31] + + 0.0512292351118326 * v[32] + v[33]; + y[50] = 0.000159310804367069 * v[23] + -7.85709394216516e-05 * v[26] + + 0.0512292351118326 * v[25] + v[10]; + y[52] = + -0.0387426891956329 * v[24] + 0.0291004290605783 * v[27] + 0.0302542351118326 * v[28] + v[29]; + y[53] = + -0.0387426891956329 * v[30] + 0.0291004290605783 * v[31] + 0.0302542351118326 * v[32] + v[33]; + y[54] = + -0.0387426891956329 * v[23] + 0.0291004290605783 * v[26] + 0.0302542351118326 * v[25] + v[10]; + v[22] = cos(x[4]); + v[34] = sin(x[4]); + v[35] = -4.44089209850063e-16 * v[34]; + v[36] = -1. * v[34]; + v[37] = v[24] * v[22] + v[27] * v[35] + v[28] * v[36]; + v[34] = -v[34]; + v[38] = -4.44089209850063e-16 * v[22]; + v[39] = -1. * v[22]; + v[40] = v[24] * v[34] + v[27] * v[38] + v[28] * v[39]; + v[41] = v[27] + -4.44089209850063e-16 * v[28]; + v[42] = v[29] + -0.0825 * v[24] + 0.384 * v[27]; + y[56] = -0.000434186588168144 * v[37] + 0.066180057600975 * v[40] + + -0.000121777759432798 * v[41] + v[42]; + v[43] = v[30] * v[22] + v[31] * v[35] + v[32] * v[36]; + v[44] = v[30] * v[34] + v[31] * v[38] + v[32] * v[39]; + v[45] = v[31] + -4.44089209850063e-16 * v[32]; + v[46] = v[33] + -0.0825 * v[30] + 0.384 * v[31]; + y[57] = -0.000434186588168144 * v[43] + 0.066180057600975 * v[44] + + -0.000121777759432798 * v[45] + v[46]; + v[36] = v[23] * v[22] + v[26] * v[35] + v[25] * v[36]; + v[39] = v[23] * v[34] + v[26] * v[38] + v[25] * v[39]; + v[38] = v[26] + -4.44089209850063e-16 * v[25]; + v[34] = v[10] + -0.0825 * v[23] + 0.384 * v[26]; + y[58] = -0.000434186588168144 * v[36] + 0.066180057600975 * v[39] + + -0.000121777759432798 * v[38] + v[34]; + y[60] = 0.000235813411831856 * v[37] + 0.088863057600975 * v[40] + -0.0383667777594328 * v[41] + + v[42]; + y[61] = 0.000235813411831856 * v[43] + 0.088863057600975 * v[44] + -0.0383667777594328 * v[45] + + v[46]; + y[62] = 0.000235813411831856 * v[36] + 0.088863057600975 * v[39] + -0.0383667777594328 * v[38] + + v[34]; + y[64] = -2.21865881681442e-05 * v[37] + 0.090490057600975 * v[40] + -0.0906467777594328 * v[41] + + v[42]; + y[65] = -2.21865881681442e-05 * v[43] + 0.090490057600975 * v[44] + -0.0906467777594328 * v[45] + + v[46]; + y[66] = -2.21865881681442e-05 * v[36] + 0.090490057600975 * v[39] + -0.0906467777594328 * v[38] + + v[34]; + y[68] = + -0.00225518658816814 * v[37] + 0.082432057600975 * v[40] + -0.129776777759433 * v[41] + v[42]; + y[69] = + -0.00225518658816814 * v[43] + 0.082432057600975 * v[44] + -0.129776777759433 * v[45] + v[46]; + y[70] = + -0.00225518658816814 * v[36] + 0.082432057600975 * v[39] + -0.129776777759433 * v[38] + v[34]; + y[72] = + 0.00197281341183186 * v[37] + 0.056373057600975 * v[40] + -0.183438777759433 * v[41] + v[42]; + y[73] = + 0.00197281341183186 * v[43] + 0.056373057600975 * v[44] + -0.183438777759433 * v[45] + v[46]; + y[74] = + 0.00197281341183186 * v[36] + 0.056373057600975 * v[39] + -0.183438777759433 * v[38] + v[34]; + y[76] = + -0.00659618658816814 * v[37] + 0.016208057600975 * v[40] + -0.214312777759433 * v[41] + v[42]; + y[77] = + -0.00659618658816814 * v[43] + 0.016208057600975 * v[44] + -0.214312777759433 * v[45] + v[46]; + y[78] = + -0.00659618658816814 * v[36] + 0.016208057600975 * v[39] + -0.214312777759433 * v[38] + v[34]; + y[80] = 0.0130218134118319 * v[37] + -0.00144994239902496 * v[40] + -0.219200777759433 * v[41] + + v[42]; + y[81] = 0.0130218134118319 * v[43] + -0.00144994239902496 * v[44] + -0.219200777759433 * v[45] + + v[46]; + y[82] = 0.0130218134118319 * v[36] + -0.00144994239902496 * v[39] + -0.219200777759433 * v[38] + + v[34]; + y[84] = -0.00891518658816814 * v[37] + -0.00937694239902497 * v[40] + -0.221168777759433 * v[41] + + v[42]; + y[85] = -0.00891518658816814 * v[43] + -0.00937694239902497 * v[44] + -0.221168777759433 * v[45] + + v[46]; + y[86] = -0.00891518658816814 * v[36] + -0.00937694239902497 * v[39] + -0.221168777759433 * v[38] + + v[34]; + v[35] = cos(x[5]); + v[22] = sin(x[5]); + v[47] = -4.44089209850063e-16 * v[22]; + v[48] = v[37] * v[35] + v[40] * v[47] + v[41] * v[22]; + v[49] = -v[22]; + v[50] = -4.44089209850063e-16 * v[35]; + v[51] = v[37] * v[49] + v[40] * v[50] + v[41] * v[35]; + v[52] = -1. * v[40] + -4.44089209850063e-16 * v[41]; + y[88] = 0.0885216327220502 * v[48] + 0.0116328354930215 * v[51] + -0.00106414643673269 * v[52] + + v[42]; + v[53] = v[43] * v[35] + v[44] * v[47] + v[45] * v[22]; + v[54] = v[43] * v[49] + v[44] * v[50] + v[45] * v[35]; + v[55] = -1. * v[44] + -4.44089209850063e-16 * v[45]; + y[89] = 0.0885216327220502 * v[53] + 0.0116328354930215 * v[54] + -0.00106414643673269 * v[55] + + v[46]; + v[47] = v[36] * v[35] + v[39] * v[47] + v[38] * v[22]; + v[50] = v[36] * v[49] + v[39] * v[50] + v[38] * v[35]; + v[49] = -1. * v[39] + -4.44089209850063e-16 * v[38]; + y[90] = 0.0885216327220502 * v[47] + 0.0116328354930215 * v[50] + -0.00106414643673269 * v[49] + + v[34]; + y[92] = + 0.0119076327220502 * v[48] + 0.0110828354930215 * v[51] + 0.0174398535632673 * v[52] + v[42]; + y[93] = + 0.0119076327220502 * v[53] + 0.0110828354930215 * v[54] + 0.0174398535632673 * v[55] + v[46]; + y[94] = + 0.0119076327220502 * v[47] + 0.0110828354930215 * v[50] + 0.0174398535632673 * v[49] + v[34]; + v[35] = cos(x[6]); + v[22] = sin(x[6]); + v[56] = -4.44089209850063e-16 * v[22]; + v[57] = v[48] * v[35] + v[51] * v[56] + v[52] * v[22]; + v[58] = -v[22]; + v[59] = -4.44089209850063e-16 * v[35]; + v[60] = v[48] * v[58] + v[51] * v[59] + v[52] * v[35]; + y[273] = -1. * v[51] + -4.44089209850063e-16 * v[52]; + v[61] = v[42] + 0.088 * v[48]; + y[96] = 0.000103343574285507 * v[57] + -0.000882708185553551 * v[60] + + 0.0776681043272018 * y[273] + v[61]; + v[62] = v[53] * v[35] + v[54] * v[56] + v[55] * v[22]; + v[63] = v[53] * v[58] + v[54] * v[59] + v[55] * v[35]; + y[274] = -1. * v[54] + -4.44089209850063e-16 * v[55]; + v[64] = v[46] + 0.088 * v[53]; + y[97] = 0.000103343574285507 * v[62] + -0.000882708185553551 * v[63] + + 0.0776681043272018 * y[274] + v[64]; + v[56] = v[47] * v[35] + v[50] * v[56] + v[49] * v[22]; + v[59] = v[47] * v[58] + v[50] * v[59] + v[49] * v[35]; + y[275] = -1. * v[50] + -4.44089209850063e-16 * v[49]; + v[58] = v[34] + 0.088 * v[47]; + y[98] = 0.000103343574285507 * v[56] + -0.000882708185553551 * v[59] + + 0.0776681043272018 * y[275] + v[58]; + y[100] = + 0.0398483435742855 * v[57] + 0.0399532918144464 * v[60] + 0.0790931043272018 * y[273] + v[61]; + y[101] = + 0.0398483435742855 * v[62] + 0.0399532918144464 * v[63] + 0.0790931043272018 * y[274] + v[64]; + y[102] = + 0.0398483435742855 * v[56] + 0.0399532918144464 * v[59] + 0.0790931043272018 * y[275] + v[58]; + y[104] = + 0.0526858266329919 * v[57] + 0.0525558145818925 * v[60] + 0.134520674433231 * y[273] + v[61]; + y[105] = + 0.0526858266329919 * v[62] + 0.0525558145818925 * v[63] + 0.134520674433231 * y[274] + v[64]; + y[106] = + 0.0526858266329919 * v[56] + 0.0525558145818925 * v[59] + 0.134520674433231 * y[275] + v[58]; + y[108] = + 0.0239122374929489 * v[57] + 0.0238755635369661 * v[60] + 0.130450674433231 * y[273] + v[61]; + y[109] = + 0.0239122374929489 * v[62] + 0.0238755635369661 * v[63] + 0.130450674433231 * y[274] + v[64]; + y[110] = + 0.0239122374929489 * v[56] + 0.0238755635369661 * v[59] + 0.130450674433231 * y[275] + v[58]; + y[112] = -0.00481963234700404 * v[57] + -0.00482236517748993 * v[60] + + 0.127964674433231 * y[273] + v[61]; + y[113] = -0.00481963234700404 * v[62] + -0.00482236517748993 * v[63] + + 0.127964674433231 * y[274] + v[64]; + y[114] = -0.00481963234700404 * v[56] + -0.00482236517748993 * v[59] + + 0.127964674433231 * y[275] + v[58]; + y[116] = -0.0431879534009673 * v[57] + -0.0432910953943817 * v[60] + 0.146945674433231 * y[273] + + v[61]; + y[117] = -0.0431879534009673 * v[62] + -0.0432910953943817 * v[63] + 0.146945674433231 * y[274] + + v[64]; + y[118] = -0.0431879534009673 * v[56] + -0.0432910953943817 * v[59] + 0.146945674433231 * y[275] + + v[58]; + y[120] = -0.0443419516678637 * v[57] + -0.0443658977017852 * v[60] + 0.113249674433231 * y[273] + + v[61]; + y[121] = -0.0443419516678637 * v[62] + -0.0443658977017852 * v[63] + 0.113249674433231 * y[274] + + v[64]; + y[122] = -0.0443419516678637 * v[56] + -0.0443658977017852 * v[59] + 0.113249674433231 * y[275] + + v[58]; + v[35] = 0.707106781186547 * v[57] + -0.707106781186548 * v[60]; + v[22] = 0.707106781186548 * v[57] + 0.707106781186547 * v[60]; + v[65] = 0.707106781186548 * x[7]; + v[66] = 0.707106781186547 * x[7]; + v[67] = v[61] + v[57] * v[65] + v[60] * v[66] + 0.1654 * y[273]; + y[124] = 0.003501 * v[35] + 0.0185 * v[22] + 0.011 * y[273] + v[67]; + v[68] = 0.707106781186547 * v[62] + -0.707106781186548 * v[63]; + v[69] = 0.707106781186548 * v[62] + 0.707106781186547 * v[63]; + v[70] = v[64] + v[62] * v[65] + v[63] * v[66] + 0.1654 * y[274]; + y[125] = 0.003501 * v[68] + 0.0185 * v[69] + 0.011 * y[274] + v[70]; + v[71] = 0.707106781186547 * v[56] + -0.707106781186548 * v[59]; + v[72] = 0.707106781186548 * v[56] + 0.707106781186547 * v[59]; + v[66] = v[58] + v[56] * v[65] + v[59] * v[66] + 0.1654 * y[275]; + y[126] = 0.003501 * v[71] + 0.0185 * v[72] + 0.011 * y[275] + v[66]; + y[128] = -0.0035 * v[35] + 0.0185 * v[22] + 0.011 * y[273] + v[67]; + y[129] = -0.0035 * v[68] + 0.0185 * v[69] + 0.011 * y[274] + v[70]; + y[130] = -0.0035 * v[71] + 0.0185 * v[72] + 0.011 * y[275] + v[66]; + y[132] = 0.007892 * v[35] + 0.004664 * v[22] + 0.0022 * y[273] + v[67]; + y[133] = 0.007892 * v[68] + 0.004664 * v[69] + 0.0022 * y[274] + v[70]; + y[134] = 0.007892 * v[71] + 0.004664 * v[72] + 0.0022 * y[275] + v[66]; + y[136] = 0.007396 * v[35] + 0.009148 * v[22] + 0.0022 * y[273] + v[67]; + y[137] = 0.007396 * v[68] + 0.009148 * v[69] + 0.0022 * y[274] + v[70]; + y[138] = 0.007396 * v[71] + 0.009148 * v[72] + 0.0022 * y[275] + v[66]; + y[140] = 0.000716 * v[35] + 0.0043 * v[22] + 0.0022 * y[273] + v[67]; + y[141] = 0.000716 * v[68] + 0.0043 * v[69] + 0.0022 * y[274] + v[70]; + y[142] = 0.000716 * v[71] + 0.0043 * v[72] + 0.0022 * y[275] + v[66]; + y[144] = -0.000175 * v[35] + 0.008894 * v[22] + 0.0022 * y[273] + v[67]; + y[145] = -0.000175 * v[68] + 0.008894 * v[69] + 0.0022 * y[274] + v[70]; + y[146] = -0.000175 * v[71] + 0.008894 * v[72] + 0.0022 * y[275] + v[66]; + y[148] = -0.007202 * v[35] + 0.004383 * v[22] + 0.0022 * y[273] + v[67]; + y[149] = -0.007202 * v[68] + 0.004383 * v[69] + 0.0022 * y[274] + v[70]; + y[150] = -0.007202 * v[71] + 0.004383 * v[72] + 0.0022 * y[275] + v[66]; + y[152] = -0.007549 * v[35] + 0.0089 * v[22] + 0.0022 * y[273] + v[67]; + y[153] = -0.007549 * v[68] + 0.0089 * v[69] + 0.0022 * y[274] + v[70]; + y[154] = -0.007549 * v[71] + 0.0089 * v[72] + 0.0022 * y[275] + v[66]; + y[156] = 1.6e-05 * v[35] + 0.011945 * v[22] + 0.0352 * y[273] + v[67]; + y[157] = 1.6e-05 * v[68] + 0.011945 * v[69] + 0.0352 * y[274] + v[70]; + y[158] = 1.6e-05 * v[71] + 0.011945 * v[72] + 0.0352 * y[275] + v[66]; + y[160] = -0.004842 * v[35] + 0.017471 * v[22] + 0.025629 * y[273] + v[67]; + y[161] = -0.004842 * v[68] + 0.017471 * v[69] + 0.025629 * y[274] + v[70]; + y[162] = -0.004842 * v[71] + 0.017471 * v[72] + 0.025629 * y[275] + v[66]; + y[164] = 0.004004 * v[35] + 0.017923 * v[22] + 0.024847 * y[273] + v[67]; + y[165] = 0.004004 * v[68] + 0.017923 * v[69] + 0.024847 * y[274] + v[70]; + y[166] = 0.004004 * v[71] + 0.017923 * v[72] + 0.024847 * y[275] + v[66]; + y[168] = 0.00758 * v[22] + 0.04525 * y[273] + v[67]; + y[169] = 0.00758 * v[69] + 0.04525 * y[274] + v[70]; + y[170] = 0.00758 * v[72] + 0.04525 * y[275] + v[66]; + v[65] = -0.707106781186547 * v[57] + 0.707106781186548 * v[60]; + v[73] = -0.707106781186548 * v[57] + -0.707106781186547 * v[60]; + v[74] = -0.707106781186548 * x[8]; + v[75] = -0.707106781186547 * x[8]; + v[76] = v[61] + v[57] * v[74] + v[60] * v[75] + 0.1654 * y[273]; + y[172] = 0.003501 * v[65] + 0.0185 * v[73] + 0.011 * y[273] + v[76]; + v[77] = -0.707106781186547 * v[62] + 0.707106781186548 * v[63]; + v[78] = -0.707106781186548 * v[62] + -0.707106781186547 * v[63]; + v[79] = v[64] + v[62] * v[74] + v[63] * v[75] + 0.1654 * y[274]; + y[173] = 0.003501 * v[77] + 0.0185 * v[78] + 0.011 * y[274] + v[79]; + v[80] = -0.707106781186547 * v[56] + 0.707106781186548 * v[59]; + v[81] = -0.707106781186548 * v[56] + -0.707106781186547 * v[59]; + v[75] = v[58] + v[56] * v[74] + v[59] * v[75] + 0.1654 * y[275]; + y[174] = 0.003501 * v[80] + 0.0185 * v[81] + 0.011 * y[275] + v[75]; + y[176] = -0.0035 * v[65] + 0.0185 * v[73] + 0.011 * y[273] + v[76]; + y[177] = -0.0035 * v[77] + 0.0185 * v[78] + 0.011 * y[274] + v[79]; + y[178] = -0.0035 * v[80] + 0.0185 * v[81] + 0.011 * y[275] + v[75]; + y[180] = 0.007892 * v[65] + 0.004664 * v[73] + 0.0022 * y[273] + v[76]; + y[181] = 0.007892 * v[77] + 0.004664 * v[78] + 0.0022 * y[274] + v[79]; + y[182] = 0.007892 * v[80] + 0.004664 * v[81] + 0.0022 * y[275] + v[75]; + y[184] = 0.007396 * v[65] + 0.009148 * v[73] + 0.0022 * y[273] + v[76]; + y[185] = 0.007396 * v[77] + 0.009148 * v[78] + 0.0022 * y[274] + v[79]; + y[186] = 0.007396 * v[80] + 0.009148 * v[81] + 0.0022 * y[275] + v[75]; + y[188] = 0.000716 * v[65] + 0.0043 * v[73] + 0.0022 * y[273] + v[76]; + y[189] = 0.000716 * v[77] + 0.0043 * v[78] + 0.0022 * y[274] + v[79]; + y[190] = 0.000716 * v[80] + 0.0043 * v[81] + 0.0022 * y[275] + v[75]; + y[192] = -0.000175 * v[65] + 0.008894 * v[73] + 0.0022 * y[273] + v[76]; + y[193] = -0.000175 * v[77] + 0.008894 * v[78] + 0.0022 * y[274] + v[79]; + y[194] = -0.000175 * v[80] + 0.008894 * v[81] + 0.0022 * y[275] + v[75]; + y[196] = -0.007202 * v[65] + 0.004383 * v[73] + 0.0022 * y[273] + v[76]; + y[197] = -0.007202 * v[77] + 0.004383 * v[78] + 0.0022 * y[274] + v[79]; + y[198] = -0.007202 * v[80] + 0.004383 * v[81] + 0.0022 * y[275] + v[75]; + y[200] = -0.007549 * v[65] + 0.0089 * v[73] + 0.0022 * y[273] + v[76]; + y[201] = -0.007549 * v[77] + 0.0089 * v[78] + 0.0022 * y[274] + v[79]; + y[202] = -0.007549 * v[80] + 0.0089 * v[81] + 0.0022 * y[275] + v[75]; + y[204] = 0.00408605801887313 * v[65] + 0.0136422240177223 * v[73] + 0.0314984681832196 * y[273] + + v[76]; + y[205] = 0.00408605801887313 * v[77] + 0.0136422240177223 * v[78] + 0.0314984681832196 * y[274] + + v[79]; + y[206] = 0.00408605801887313 * v[80] + 0.0136422240177223 * v[81] + 0.0314984681832196 * y[275] + + v[75]; + y[208] = 5.80188731266046e-08 * v[65] + 0.0195482240177223 * v[73] + 0.0209754681832196 * y[273] + + v[76]; + y[209] = 5.80188731266046e-08 * v[77] + 0.0195482240177223 * v[78] + 0.0209754681832196 * y[274] + + v[79]; + y[210] = 5.80188731266046e-08 * v[80] + 0.0195482240177223 * v[81] + 0.0209754681832196 * y[275] + + v[75]; + y[212] = -0.00501194198112687 * v[65] + 0.0137262240177223 * v[73] + 0.0309874681832196 * y[273] + + v[76]; + y[213] = -0.00501194198112687 * v[77] + 0.0137262240177223 * v[78] + 0.0309874681832196 * y[274] + + v[79]; + y[214] = -0.00501194198112687 * v[80] + 0.0137262240177223 * v[81] + 0.0309874681832196 * y[275] + + v[75]; + y[216] = 0.00758 * v[73] + 0.04525 * y[273] + v[76]; + y[217] = 0.00758 * v[78] + 0.04525 * y[274] + v[79]; + y[218] = 0.00758 * v[81] + 0.04525 * y[275] + v[75]; + y[224] = 1.62964861374348e-05 * v[0] + -0.0270740408450365 * v[2]; + y[225] = 1.62964861374348e-05 * v[1] + -0.0270740408450365 * v[0]; + y[228] = -0.000176759494934231 * v[6] + -0.0700937807559967 * v[9] + 0.0267863664776087 * v[2]; + y[229] = -0.000176759494934231 * v[5] + -0.0700937807559967 * v[8] + 0.0267863664776087 * v[0]; + y[230] = + 0.333 + -0.000176759494934231 * v[4] + -1.18955363237954e-17 + -0.0700937807559967 * v[3]; + y[232] = + 0.0414390936493874 * v[12] + 0.025893222540617 * v[15] + -0.0373931415379047 * v[16] + v[17]; + y[233] = + 0.0414390936493874 * v[18] + 0.025893222540617 * v[19] + -0.0373931415379047 * v[20] + v[21]; + y[234] = + 0.0414390936493874 * v[11] + 0.025893222540617 * v[14] + -0.0373931415379047 * v[13] + v[7]; + y[236] = + -0.0411574989557266 * v[24] + 0.0369004793465137 * v[27] + 0.0255731008946896 * v[28] + v[29]; + y[237] = + -0.0411574989557266 * v[30] + 0.0369004793465137 * v[31] + 0.0255731008946896 * v[32] + v[33]; + y[238] = + -0.0411574989557266 * v[23] + 0.0369004793465137 * v[26] + 0.0255731008946896 * v[25] + v[10]; + y[240] = -0.00449681794270873 * v[37] + 0.0299861840903759 * v[40] + -0.106009349226952 * v[41] + + v[42]; + y[241] = -0.00449681794270873 * v[43] + 0.0299861840903759 * v[44] + -0.106009349226952 * v[45] + + v[46]; + y[242] = -0.00449681794270873 * v[36] + 0.0299861840903759 * v[39] + -0.106009349226952 * v[38] + + v[34]; + y[244] = + 0.0530733652412891 * v[48] + 0.0113783581182361 * v[51] + 0.00749740563333035 * v[52] + v[42]; + y[245] = + 0.0530733652412891 * v[53] + 0.0113783581182361 * v[54] + 0.00749740563333035 * v[55] + v[46]; + y[246] = + 0.0530733652412891 * v[47] + 0.0113783581182361 * v[50] + 0.00749740563333035 * v[49] + v[34]; + y[248] = + 0.0158034916967154 * v[57] + 0.0152484085410833 * v[60] + 0.0782310143113136 * y[273] + v[61]; + y[249] = + 0.0158034916967154 * v[62] + 0.0152484085410833 * v[63] + 0.0782310143113136 * y[274] + v[64]; + y[250] = + 0.0158034916967154 * v[56] + 0.0152484085410833 * v[59] + 0.0782310143113136 * y[275] + v[58]; + y[252] = 0.00388643983751535 * v[57] + 0.00380042637698352 * v[60] + 0.127833276987076 * y[273] + + v[61]; + y[253] = 0.00388643983751535 * v[62] + 0.00380042637698352 * v[63] + 0.127833276987076 * y[274] + + v[64]; + y[254] = 0.00388643983751535 * v[56] + 0.00380042637698352 * v[59] + 0.127833276987076 * y[275] + + v[58]; + y[256] = -2.10780513043574e-06 * v[35] + 0.0129222339019179 * v[22] + + 0.0280418023467064 * y[273] + v[67]; + y[257] = -2.10780513043574e-06 * v[68] + 0.0129222339019179 * v[69] + + 0.0280418023467064 * y[274] + v[70]; + y[258] = -2.10780513043574e-06 * v[71] + 0.0129222339019179 * v[72] + + 0.0280418023467064 * y[275] + v[66]; + y[260] = -2.10780513043574e-06 * v[65] + 0.0129222339019179 * v[73] + + 0.0280418023467064 * y[273] + v[76]; + y[261] = -2.10780513043574e-06 * v[77] + 0.0129222339019179 * v[78] + + 0.0280418023467064 * y[274] + v[79]; + y[262] = -2.10780513043574e-06 * v[80] + 0.0129222339019179 * v[81] + + 0.0280418023467064 * y[275] + v[75]; + y[264] = v[61] + 0.2104 * y[273]; + y[265] = v[64] + 0.2104 * y[274]; + y[266] = v[58] + 0.2104 * y[275]; + y[267] = 0.707106781186547 * v[57] + -0.707106781186548 * v[60]; + y[268] = 0.707106781186547 * v[62] + -0.707106781186548 * v[63]; + y[269] = 0.707106781186547 * v[56] + -0.707106781186548 * v[59]; + y[270] = 0.707106781186548 * v[57] + 0.707106781186547 * v[60]; + y[271] = 0.707106781186548 * v[62] + 0.707106781186547 * v[63]; + y[272] = 0.707106781186548 * v[56] + 0.707106781186547 * v[59]; + // dependent variables without operations + y[0] = -0.0860495389437377; + y[1] = 0.0036964648894988; + y[2] = 0.0394402485578895; + y[3] = 0.0936459973454475; + y[4] = -0.0156275389437377; + y[5] = 0.000401464889498803; + y[6] = 0.0662522485578895; + y[7] = 0.117857001721859; + y[10] = 0.193462213836312; + y[11] = 0.0765959993004799; + y[14] = 0.333404213836312; + y[15] = 0.0772090032696724; + y[18] = 0.259795213836312; + y[19] = 0.0638410001993179; + y[23] = 0.0768160000443459; + y[27] = 0.0774890035390854; + y[31] = 0.0620479993522167; + y[35] = 0.0759430006146431; + y[39] = 0.0750190019607544; + y[43] = 0.0620479993522167; + y[47] = 0.0754949972033501; + y[51] = 0.0753609985113144; + y[55] = 0.0551490001380444; + y[59] = 0.0688280016183853; + y[63] = 0.048845998942852; + y[67] = 0.0370859988033772; + y[71] = 0.0385459996759892; + y[75] = 0.0522850006818771; + y[79] = 0.0658399984240532; + y[83] = 0.0613869987428188; + y[87] = 0.0590230002999306; + y[91] = 0.0827130004763603; + y[95] = 0.0768309980630875; + y[99] = 0.0545630007982254; + y[103] = 0.0425949990749359; + y[107] = 0.0443940013647079; + y[111] = 0.0489780008792877; + y[115] = 0.0503519997000694; + y[119] = 0.0444249995052814; + y[123] = 0.0439950004220009; + y[127] = 0.0145770004019141; + y[131] = 0.0145779997110367; + y[135] = 0.00429000006988645; + y[139] = 0.00456399982795119; + y[143] = 0.00486999982967973; + y[147] = 0.00475199986249208; + y[151] = 0.00469500012695789; + y[155] = 0.00457100011408329; + y[159] = 0.0101910000666976; + y[163] = 0.0100819999352098; + y[167] = 0.00970400031656027; + y[171] = 0.0148290004581213; + y[175] = 0.0145770004019141; + y[179] = 0.0145779997110367; + y[183] = 0.00429000006988645; + y[187] = 0.00456399982795119; + y[191] = 0.00486999982967973; + y[195] = 0.00475199986249208; + y[199] = 0.00469500012695789; + y[203] = 0.00457100011408329; + y[207] = 0.0101370001211762; + y[211] = 0.0107009997591376; + y[215] = 0.0105830002576113; + y[219] = 0.0148290004581213; + y[220] = -0.0395360700786114; + y[221] = 0.00152012973558158; + y[222] = 0.0571494735777378; + y[223] = 0.143464222550392; + y[226] = 0.263718712508678; + y[227] = 0.152021005749702; + y[231] = 0.15290692448616; + y[235] = 0.13565456867218; + y[239] = 0.136457368731499; + y[243] = 0.180804252624512; + y[247] = 0.119181409478188; + y[251] = 0.0770802050828934; + y[255] = 0.113699048757553; + y[259] = 0.0328473672270775; + y[263] = 0.0328473672270775; + + // + // environment vs. robot collisions + // + + // fr3_rightfinger + if (sphere_environment_in_collision(environment, y[260], y[261], y[262], y[263])) + { + if (sphere_environment_in_collision(environment, y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_leftfinger + if (sphere_environment_in_collision(environment, y[256], y[257], y[258], y[259])) + { + if (sphere_environment_in_collision(environment, y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_hand + if (sphere_environment_in_collision(environment, y[252], y[253], y[254], y[255])) + { + if (sphere_environment_in_collision(environment, y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link7 + if (sphere_environment_in_collision(environment, y[248], y[249], y[250], y[251])) + { + if (sphere_environment_in_collision(environment, y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link6 + if (sphere_environment_in_collision(environment, y[244], y[245], y[246], y[247])) + { + if (sphere_environment_in_collision(environment, y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[92], y[93], y[94], y[95])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link5 + if (sphere_environment_in_collision(environment, y[240], y[241], y[242], y[243])) + { + if (sphere_environment_in_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link4 + if (sphere_environment_in_collision(environment, y[236], y[237], y[238], y[239])) + { + if (sphere_environment_in_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link3 + if (sphere_environment_in_collision(environment, y[232], y[233], y[234], y[235])) + { + if (sphere_environment_in_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link2 + if (sphere_environment_in_collision(environment, y[228], y[229], y[230], y[231])) + { + if (sphere_environment_in_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link1 + if (sphere_environment_in_collision(environment, y[224], y[225], y[226], y[227])) + { + if (sphere_environment_in_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // fr3_link0 + if (sphere_environment_in_collision(environment, y[220], y[221], y[222], y[223])) + { + if (sphere_environment_in_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + } + + // + // robot self-collisions + // + + // fr3_link0 vs. fr3_link5 + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[240], y[241], y[242], y[243])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // fr3_link0 vs. fr3_link6 + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[244], y[245], y[246], y[247])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + return false; + } + } + + // fr3_link0 vs. fr3_link7 + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[248], y[249], y[250], y[251])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // fr3_link0 vs. fr3_hand + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link0 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link0 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[220], y[221], y[222], y[223], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // fr3_link1 vs. fr3_link5 + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[240], y[241], y[242], y[243])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // fr3_link1 vs. fr3_link6 + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[244], y[245], y[246], y[247])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + return false; + } + } + + // fr3_link1 vs. fr3_link7 + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[248], y[249], y[250], y[251])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // fr3_link1 vs. fr3_hand + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link1 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link1 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[224], y[225], y[226], y[227], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // fr3_link2 vs. fr3_link5 + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[240], y[241], y[242], y[243])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[68], y[69], y[70], y[71])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + return false; + } + } + + // fr3_link2 vs. fr3_link7 + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[248], y[249], y[250], y[251])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + return false; + } + } + + // fr3_link2 vs. fr3_hand + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link2 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link2 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[228], y[229], y[230], y[231], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // fr3_link5 vs. fr3_hand + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[252], y[253], y[254], y[255])) + { + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // fr3_link5 vs. fr3_leftfinger + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[256], y[257], y[258], y[259])) + { + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // fr3_link5 vs. fr3_rightfinger + if (sphere_sphere_self_collision( + y[240], y[241], y[242], y[243], y[260], y[261], y[262], y[263])) + { + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[72], y[73], y[74], y[75], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[76], y[77], y[78], y[79], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[80], y[81], y[82], y[83], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[84], y[85], y[86], y[87], y[216], y[217], y[218], y[219])) + { + return false; + } + } + + // attaching at ["fr3_hand_tcp"] + // provide the eef pose of all end effectors. + set_attachment_pose(environment, to_isometries<1>(&y[264])); + + // + // attachment vs. environment collisions + // + if (attachment_environment_collision(environment)) + { + return false; + } + + // + // attachment vs. robot collisions + // + + // Attachment vs. fr3_link0 + if (attachment_sphere_collision(environment, y[220], y[221], y[222], y[223])) + { + if (attachment_sphere_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + } + + // Attachment vs. fr3_link1 + if (attachment_sphere_collision(environment, y[224], y[225], y[226], y[227])) + { + if (attachment_sphere_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + } + + // Attachment vs. fr3_link2 + if (attachment_sphere_collision(environment, y[228], y[229], y[230], y[231])) + { + if (attachment_sphere_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + } + + // Attachment vs. fr3_link5 + if (attachment_sphere_collision(environment, y[240], y[241], y[242], y[243])) + { + if (attachment_sphere_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + } + + return true; + } + + inline static auto eefk(const std::array &x) noexcept -> std::array + { + std::array v; + std::array y; + + v[0] = cos(x[0]); + v[1] = sin(x[1]); + v[2] = -v[1]; + v[3] = sin(x[0]); + v[4] = -v[3]; + v[5] = cos(x[1]); + v[6] = -4.44089209850063e-16 * v[5]; + v[7] = v[0] * v[2] + v[4] * v[6]; + v[8] = -4.44089209850063e-16 * v[1]; + v[9] = v[0] * v[5] + v[4] * v[8]; + v[10] = cos(x[2]); + v[11] = sin(x[2]); + v[12] = -4.44089209850063e-16 * v[11]; + v[13] = v[9] * v[10] + v[7] * v[12] + v[4] * v[11]; + v[14] = cos(x[3]); + v[15] = -v[11]; + v[16] = -4.44089209850063e-16 * v[10]; + v[9] = v[9] * v[15] + v[7] * v[16] + v[4] * v[10]; + v[17] = sin(x[3]); + v[18] = -4.44089209850063e-16 * v[17]; + v[4] = -1. * v[7] + -4.44089209850063e-16 * v[4]; + v[19] = v[13] * v[14] + v[9] * v[18] + v[4] * v[17]; + v[20] = -v[17]; + v[21] = -4.44089209850063e-16 * v[14]; + v[22] = v[13] * v[20] + v[9] * v[21] + v[4] * v[14]; + v[23] = cos(x[4]); + v[24] = sin(x[4]); + v[25] = -4.44089209850063e-16 * v[24]; + v[4] = -1. * v[9] + -4.44089209850063e-16 * v[4]; + v[9] = -1. * v[24]; + v[26] = v[19] * v[23] + v[22] * v[25] + v[4] * v[9]; + v[27] = cos(x[5]); + v[24] = -v[24]; + v[28] = -4.44089209850063e-16 * v[23]; + v[29] = -1. * v[23]; + v[30] = v[19] * v[24] + v[22] * v[28] + v[4] * v[29]; + v[31] = sin(x[5]); + v[32] = -4.44089209850063e-16 * v[31]; + v[4] = v[22] + -4.44089209850063e-16 * v[4]; + v[33] = v[26] * v[27] + v[30] * v[32] + v[4] * v[31]; + v[34] = -v[31]; + v[35] = -4.44089209850063e-16 * v[27]; + v[26] = v[26] * v[34] + v[30] * v[35] + v[4] * v[27]; + v[4] = -1. * v[30] + -4.44089209850063e-16 * v[4]; + y[9] = -1. * v[26] + -4.44089209850063e-16 * v[4]; + y[0] = -0.316 * v[7] + 0.0825 * v[13] + -0.0825 * v[19] + 0.384 * v[22] + 0.088 * v[33] + + 0.2104 * y[9]; + v[6] = v[3] * v[2] + v[0] * v[6]; + v[8] = v[3] * v[5] + v[0] * v[8]; + v[3] = v[8] * v[10] + v[6] * v[12] + v[0] * v[11]; + v[8] = v[8] * v[15] + v[6] * v[16] + v[0] * v[10]; + v[0] = -1. * v[6] + -4.44089209850063e-16 * v[0]; + v[2] = v[3] * v[14] + v[8] * v[18] + v[0] * v[17]; + v[22] = v[3] * v[20] + v[8] * v[21] + v[0] * v[14]; + v[0] = -1. * v[8] + -4.44089209850063e-16 * v[0]; + v[8] = v[2] * v[23] + v[22] * v[25] + v[0] * v[9]; + v[19] = v[2] * v[24] + v[22] * v[28] + v[0] * v[29]; + v[0] = v[22] + -4.44089209850063e-16 * v[0]; + v[13] = v[8] * v[27] + v[19] * v[32] + v[0] * v[31]; + v[8] = v[8] * v[34] + v[19] * v[35] + v[0] * v[27]; + v[0] = -1. * v[19] + -4.44089209850063e-16 * v[0]; + y[10] = -1. * v[8] + -4.44089209850063e-16 * v[0]; + y[1] = -0.316 * v[6] + 0.0825 * v[3] + -0.0825 * v[2] + 0.384 * v[22] + 0.088 * v[13] + + 0.2104 * y[10]; + v[5] = -1. * v[5]; + v[1] = -1. * v[1]; + v[12] = v[1] * v[10] + v[5] * v[12] + -4.44089209850063e-16 * v[11]; + v[1] = v[1] * v[15] + v[5] * v[16] + -4.44089209850063e-16 * v[10]; + v[16] = 1.97215226305253e-31 + -1. * v[5]; + v[18] = v[12] * v[14] + v[1] * v[18] + v[16] * v[17]; + v[21] = v[12] * v[20] + v[1] * v[21] + v[16] * v[14]; + v[16] = -1. * v[1] + -4.44089209850063e-16 * v[16]; + v[9] = v[18] * v[23] + v[21] * v[25] + v[16] * v[9]; + v[29] = v[18] * v[24] + v[21] * v[28] + v[16] * v[29]; + v[16] = v[21] + -4.44089209850063e-16 * v[16]; + v[32] = v[9] * v[27] + v[29] * v[32] + v[16] * v[31]; + v[9] = v[9] * v[34] + v[29] * v[35] + v[16] * v[27]; + v[16] = -1. * v[29] + -4.44089209850063e-16 * v[16]; + y[11] = -1. * v[9] + -4.44089209850063e-16 * v[16]; + y[2] = 0.333 + -0.316 * v[5] + 0.0825 * v[12] + -0.0825 * v[18] + 0.384 * v[21] + 0.088 * v[32] + + 0.2104 * y[11]; + v[21] = cos(x[6]); + v[18] = sin(x[6]); + v[12] = -4.44089209850063e-16 * v[18]; + v[5] = v[33] * v[21] + v[26] * v[12] + v[4] * v[18]; + v[29] = -v[18]; + v[35] = -4.44089209850063e-16 * v[21]; + v[4] = v[33] * v[29] + v[26] * v[35] + v[4] * v[21]; + y[3] = 0.707106781186547 * v[5] + -0.707106781186548 * v[4]; + v[26] = v[13] * v[21] + v[8] * v[12] + v[0] * v[18]; + v[0] = v[13] * v[29] + v[8] * v[35] + v[0] * v[21]; + y[4] = 0.707106781186547 * v[26] + -0.707106781186548 * v[0]; + v[12] = v[32] * v[21] + v[9] * v[12] + v[16] * v[18]; + v[35] = v[32] * v[29] + v[9] * v[35] + v[16] * v[21]; + y[5] = 0.707106781186547 * v[12] + -0.707106781186548 * v[35]; + y[6] = 0.707106781186548 * v[5] + 0.707106781186547 * v[4]; + y[7] = 0.707106781186548 * v[26] + 0.707106781186547 * v[0]; + y[8] = 0.707106781186548 * v[12] + 0.707106781186547 * v[35]; + + return to_isometries<1>(y.data()); + } + }; +} // namespace vamp::robots + +// NOLINTEND(*-magic-numbers) diff --git a/src/impl/vamp/robots/panda.hh b/src/impl/vamp/robots/panda.hh index 0c51e3f9..d08c7ecb 100644 --- a/src/impl/vamp/robots/panda.hh +++ b/src/impl/vamp/robots/panda.hh @@ -25,7 +25,7 @@ namespace vamp::robots "panda_joint5", "panda_joint6", "panda_joint7"}; - static constexpr char *end_effector = "panda_grasptarget"; + static constexpr std::array end_effectors = {"panda_grasptarget"}; using Configuration = FloatVector; using ConfigurationArray = std::array; @@ -944,141 +944,107 @@ namespace vamp::robots output.first.emplace_back( sphere_environment_get_collisions(environment, y[96], y[97], y[98], y[99])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[100], y[101], y[102], y[103])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[100], y[101], y[102], y[103])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[104], y[105], y[106], y[107])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[104], y[105], y[106], y[107])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[108], y[109], y[110], y[111])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[108], y[109], y[110], y[111])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[112], y[113], y[114], y[115])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[112], y[113], y[114], y[115])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[116], y[117], y[118], y[119])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[116], y[117], y[118], y[119])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[120], y[121], y[122], y[123])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[120], y[121], y[122], y[123])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[124], y[125], y[126], y[127])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[124], y[125], y[126], y[127])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[128], y[129], y[130], y[131])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[128], y[129], y[130], y[131])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[132], y[133], y[134], y[135])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[132], y[133], y[134], y[135])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[136], y[137], y[138], y[139])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[136], y[137], y[138], y[139])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[140], y[141], y[142], y[143])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[140], y[141], y[142], y[143])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[144], y[145], y[146], y[147])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[144], y[145], y[146], y[147])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[148], y[149], y[150], y[151])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[148], y[149], y[150], y[151])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[152], y[153], y[154], y[155])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[152], y[153], y[154], y[155])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[156], y[157], y[158], y[159])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[156], y[157], y[158], y[159])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[160], y[161], y[162], y[163])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[160], y[161], y[162], y[163])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[164], y[165], y[166], y[167])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[164], y[165], y[166], y[167])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[168], y[169], y[170], y[171])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[168], y[169], y[170], y[171])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[172], y[173], y[174], y[175])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[172], y[173], y[174], y[175])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[176], y[177], y[178], y[179])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[176], y[177], y[178], y[179])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[180], y[181], y[182], y[183])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[180], y[181], y[182], y[183])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[184], y[185], y[186], y[187])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[184], y[185], y[186], y[187])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[188], y[189], y[190], y[191])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[188], y[189], y[190], y[191])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[192], y[193], y[194], y[195])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[192], y[193], y[194], y[195])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[196], y[197], y[198], y[199])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[196], y[197], y[198], y[199])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[200], y[201], y[202], y[203])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[200], y[201], y[202], y[203])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[204], y[205], y[206], y[207])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[204], y[205], y[206], y[207])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[208], y[209], y[210], y[211])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[208], y[209], y[210], y[211])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[212], y[213], y[214], y[215])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[212], y[213], y[214], y[215])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[216], y[217], y[218], y[219])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[216], y[217], y[218], y[219])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[220], y[221], y[222], y[223])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[220], y[221], y[222], y[223])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[224], y[225], y[226], y[227])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[224], y[225], y[226], y[227])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[228], y[229], y[230], y[231])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[228], y[229], y[230], y[231])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[232], y[233], y[234], y[235])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[232], y[233], y[234], y[235])); if (sphere_sphere_self_collision( y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) @@ -15305,8 +15271,9 @@ namespace vamp::robots } } - // attaching at panda_grasptarget - set_attachment_pose(environment, to_isometry(&y[280])); + // attaching at ["panda_grasptarget"] + // provide the eef pose of all end effectors. + set_attachment_pose(environment, to_isometries<1>(&y[280])); // // attachment vs. environment collisions @@ -15444,7 +15411,7 @@ namespace vamp::robots return true; } - inline static auto eefk(const std::array &x) noexcept -> Eigen::Isometry3f + inline static auto eefk(const std::array &x) noexcept -> std::array { std::array v; std::array y; @@ -15548,7 +15515,7 @@ namespace vamp::robots y[7] = 0.70710678118623 * v[26] + 0.707106781186865 * v[0]; y[8] = 0.70710678118623 * v[12] + 0.707106781186865 * v[35]; - return to_isometry(y.data()); + return to_isometries<1>(y.data()); } }; } // namespace vamp::robots diff --git a/src/impl/vamp/robots/sphere.hh b/src/impl/vamp/robots/sphere.hh index 76383995..869f403b 100644 --- a/src/impl/vamp/robots/sphere.hh +++ b/src/impl/vamp/robots/sphere.hh @@ -34,7 +34,7 @@ namespace vamp::robots }; static constexpr std::array joint_names = {"x", "y", "z"}; - static constexpr char *end_effector = ""; + static constexpr std::array end_effectors = {}; template struct Spheres @@ -140,11 +140,12 @@ namespace vamp::robots out.r[0] = radius; } - static auto eefk(const std::array &q) noexcept -> Eigen::Isometry3f + static auto eefk(const std::array &q) noexcept -> std::array { auto tf = Eigen::Isometry3f::Identity(); tf.translation() = Eigen::Vector3f(q[0], q[1], q[2]); - return tf; + std::array out = {tf}; + return out; } }; } // namespace vamp::robots diff --git a/src/impl/vamp/robots/ur10e.hh b/src/impl/vamp/robots/ur10e.hh new file mode 100644 index 00000000..f35ab52a --- /dev/null +++ b/src/impl/vamp/robots/ur10e.hh @@ -0,0 +1,24952 @@ +#pragma once + +#include +#include +#include +#include + +// NOLINTBEGIN(*-magic-numbers) +namespace vamp::robots +{ + struct UR10e + { + static constexpr char *name = "ur10e"; + static constexpr std::size_t dimension = 6; + static constexpr std::size_t n_spheres = 79; + static constexpr float min_radius = 0.00865000020712614; + static constexpr float max_radius = 0.12201900035142899; + static constexpr std::size_t resolution = 32; + + static constexpr std::array joint_names = { + "shoulder_pan_joint", + "shoulder_lift_joint", + "elbow_joint", + "wrist_1_joint", + "wrist_2_joint", + "wrist_3_joint"}; + static constexpr std::array end_effectors = {"robotiq_85_base_link"}; + + using Configuration = FloatVector; + using ConfigurationArray = std::array; + + struct alignas(FloatVectorAlignment) ConfigurationBuffer + : std::array + { + }; + + template + using ConfigurationBlock = FloatVector; + + template + struct Spheres + { + FloatVector x; + FloatVector y; + FloatVector z; + FloatVector r; + }; + + alignas(Configuration::S::Alignment) static constexpr std::array s_m{ + 6.2831854820251465, + 6.2831854820251465, + 6.2831854820251465, + 6.2831854820251465, + 6.2831854820251465, + 6.2831854820251465}; + + alignas(Configuration::S::Alignment) static constexpr std::array s_a{ + -3.1415927410125732, + -3.1415927410125732, + -3.1415927410125732, + -3.1415927410125732, + -3.1415927410125732, + -3.1415927410125732}; + + alignas(Configuration::S::Alignment) static constexpr std::array d_m{ + 0.15915493667125702, + 0.15915493667125702, + 0.15915493667125702, + 0.15915493667125702, + 0.15915493667125702, + 0.15915493667125702}; + + inline static void scale_configuration(Configuration &q) noexcept + { + q = q * Configuration(s_m) + Configuration(s_a); + } + + inline static void descale_configuration(Configuration &q) noexcept + { + q = (q - Configuration(s_a)) * Configuration(d_m); + } + + template + inline static void scale_configuration_block(ConfigurationBlock &q) noexcept + { + q[0] = -3.1415927410125732 + (q[0] * 6.2831854820251465); + q[1] = -3.1415927410125732 + (q[1] * 6.2831854820251465); + q[2] = -3.1415927410125732 + (q[2] * 6.2831854820251465); + q[3] = -3.1415927410125732 + (q[3] * 6.2831854820251465); + q[4] = -3.1415927410125732 + (q[4] * 6.2831854820251465); + q[5] = -3.1415927410125732 + (q[5] * 6.2831854820251465); + } + + template + inline static void descale_configuration_block(ConfigurationBlock &q) noexcept + { + q[0] = 0.15915493667125702 * (q[0] - -3.1415927410125732); + q[1] = 0.15915493667125702 * (q[1] - -3.1415927410125732); + q[2] = 0.15915493667125702 * (q[2] - -3.1415927410125732); + q[3] = 0.15915493667125702 * (q[3] - -3.1415927410125732); + q[4] = 0.15915493667125702 * (q[4] - -3.1415927410125732); + q[5] = 0.15915493667125702 * (q[5] - -3.1415927410125732); + } + + inline static auto space_measure() noexcept -> float + { + return 61528.908388819465; + } + + template + inline static void sphere_fk(const ConfigurationBlock &x, Spheres &out) noexcept + { + std::array, 20> v; + std::array, 316> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -1. * v[0] + -1.22464679914735e-16 * v[1]; + v[3] = -v[1]; + v[4] = -1. * v[3] + -1.22464679914735e-16 * v[0]; + y[4] = -0.000288299505126466 * v[2] + -0.00873530766096221 * v[4]; + v[1] = 1.22464679914735e-16 * v[0] + -1. * v[1]; + v[3] = 1.22464679914735e-16 * v[3] + -1. * v[0]; + y[5] = -0.000288299505126466 * v[1] + -0.00873530766096221 * v[3]; + v[0] = cos(x[1]); + v[5] = sin(x[1]); + v[6] = -2.05103489747671e-10 * v[5]; + v[7] = v[2] * v[0] + v[4] * v[6]; + v[8] = -v[5]; + v[9] = -2.05103489747671e-10 * v[0]; + v[2] = v[2] * v[8] + v[4] * v[9]; + v[4] = -1. * v[4]; + y[8] = -0.607041969037533 * v[7] + 1.42804932594299e-06 * v[2] + 0.16623906538415 * v[4]; + v[6] = v[1] * v[0] + v[3] * v[6]; + v[9] = v[1] * v[8] + v[3] * v[9]; + v[3] = -1. * v[3]; + y[9] = -0.607041969037533 * v[6] + 1.42804932594299e-06 * v[9] + 0.16623906538415 * v[3]; + y[10] = 0.1807 + -0.607041969037533 * v[5] + -3.40962124426803e-11 + 1.42804932594299e-06 * v[0]; + y[12] = 0.000413030962467198 * v[7] + 5.42804932594299e-06 * v[2] + 0.17160506538415 * v[4]; + y[13] = 0.000413030962467198 * v[6] + 5.42804932594299e-06 * v[9] + 0.17160506538415 * v[3]; + y[14] = + 0.1807 + 0.000413030962467198 * v[5] + -3.51967977686664e-11 + 5.42804932594299e-06 * v[0]; + y[16] = -0.516884969037533 * v[7] + 3.42804932594299e-06 * v[2] + 0.16899706538415 * v[4]; + y[17] = -0.516884969037533 * v[6] + 3.42804932594299e-06 * v[9] + 0.16899706538415 * v[3]; + y[18] = 0.1807 + -0.516884969037533 * v[5] + -3.46618878674044e-11 + 3.42804932594299e-06 * v[0]; + y[20] = -0.423410969037533 * v[7] + 9.42804932594299e-06 * v[2] + 0.17053706538415 * v[4]; + y[21] = -0.423410969037533 * v[6] + 9.42804932594299e-06 * v[9] + 0.17053706538415 * v[3]; + y[22] = 0.1807 + -0.423410969037533 * v[5] + -3.49777472416158e-11 + 9.42804932594299e-06 * v[0]; + y[24] = -0.328266969037533 * v[7] + 1.2428049325943e-05 * v[2] + 0.17244706538415 * v[4]; + y[25] = -0.328266969037533 * v[6] + 1.2428049325943e-05 * v[9] + 0.17244706538415 * v[3]; + y[26] = 0.1807 + -0.328266969037533 * v[5] + -3.53694949070339e-11 + 1.2428049325943e-05 * v[0]; + y[28] = -0.225282969037533 * v[7] + 1.8428049325943e-05 * v[2] + 0.17491006538415 * v[4]; + y[29] = -0.225282969037533 * v[6] + 1.8428049325943e-05 * v[9] + 0.17491006538415 * v[3]; + y[30] = 0.1807 + -0.225282969037533 * v[5] + -3.58746648022824e-11 + 1.8428049325943e-05 * v[0]; + y[32] = -0.129197969037533 * v[7] + 2.6428049325943e-05 * v[2] + 0.17046706538415 * v[4]; + y[33] = -0.129197969037533 * v[6] + 2.6428049325943e-05 * v[9] + 0.17046706538415 * v[3]; + y[34] = 0.1807 + -0.129197969037533 * v[5] + -3.49633899973335e-11 + 2.6428049325943e-05 * v[0]; + y[36] = -0.0292619690375328 * v[7] + 6.42804932594299e-06 * v[2] + 0.17915506538415 * v[4]; + y[37] = -0.0292619690375328 * v[6] + 6.42804932594299e-06 * v[9] + 0.17915506538415 * v[3]; + y[38] = 0.1807 + -0.0292619690375328 * v[5] + -3.67453291162613e-11 + 6.42804932594299e-06 * v[0]; + v[8] = cos(x[2]); + v[1] = sin(x[2]); + v[10] = v[7] * v[8] + v[2] * v[1]; + v[11] = -v[1]; + v[2] = v[7] * v[11] + v[2] * v[8]; + v[7] = -0.6127 * v[7]; + y[40] = + -0.563005578970909 * v[10] + 6.19744038581848e-06 * v[2] + 0.0494461657419205 * v[4] + v[7]; + v[12] = v[6] * v[8] + v[9] * v[1]; + v[9] = v[6] * v[11] + v[9] * v[8]; + v[6] = -0.6127 * v[6]; + y[41] = + -0.563005578970909 * v[12] + 6.19744038581848e-06 * v[9] + 0.0494461657419205 * v[3] + v[6]; + v[1] = v[5] * v[8] + v[0] * v[1]; + v[11] = v[5] * v[11] + v[0] * v[8]; + v[5] = 0.1807 + -0.6127 * v[5]; + y[42] = -0.563005578970909 * v[1] + -1.01415811483096e-11 + 6.19744038581848e-06 * v[11] + v[5]; + y[44] = + -0.489168578970909 * v[10] + -8.02559614181519e-07 * v[2] + 0.0491121657419205 * v[4] + v[7]; + y[45] = + -0.489168578970909 * v[12] + -8.02559614181519e-07 * v[9] + 0.0491121657419205 * v[3] + v[6]; + y[46] = -0.489168578970909 * v[1] + -1.00730765827339e-11 + -8.02559614181519e-07 * v[11] + v[5]; + y[48] = + -0.406023578970909 * v[10] + -5.80255961418152e-06 * v[2] + 0.0465401657419205 * v[4] + v[7]; + y[49] = + -0.406023578970909 * v[12] + -5.80255961418152e-06 * v[9] + 0.0465401657419205 * v[3] + v[6]; + y[50] = -0.406023578970909 * v[1] + -9.54555040710291e-12 + -5.80255961418152e-06 * v[11] + v[5]; + y[52] = + -0.331356578970909 * v[10] + -1.18025596141815e-05 * v[2] + 0.0518921657419205 * v[4] + v[7]; + y[53] = + -0.331356578970909 * v[12] + -1.18025596141815e-05 * v[9] + 0.0518921657419205 * v[3] + v[6]; + y[54] = -0.331356578970909 * v[1] + -1.06432642842324e-11 + -1.18025596141815e-05 * v[11] + v[5]; + y[56] = + -0.252682578970909 * v[10] + -1.88025596141815e-05 * v[2] + 0.0485491657419205 * v[4] + v[7]; + y[57] = + -0.252682578970909 * v[12] + -1.88025596141815e-05 * v[9] + 0.0485491657419205 * v[3] + v[6]; + y[58] = -0.252682578970909 * v[1] + -9.95760331800598e-12 + -1.88025596141815e-05 * v[11] + v[5]; + y[60] = + -0.162805578970909 * v[10] + 0.000842197440385818 * v[2] + 0.0465861657419205 * v[4] + v[7]; + y[61] = + -0.162805578970909 * v[12] + 0.000842197440385818 * v[9] + 0.0465861657419205 * v[3] + v[6]; + y[62] = -0.162805578970909 * v[1] + -9.5549851676313e-12 + 0.000842197440385818 * v[11] + v[5]; + y[64] = + -0.0761155789709091 * v[10] + -0.000181802559614182 * v[2] + 0.0427021657419205 * v[4] + v[7]; + y[65] = + -0.0761155789709091 * v[12] + -0.000181802559614182 * v[9] + 0.0427021657419205 * v[3] + v[6]; + y[66] = -0.0761155789709091 * v[1] + -8.75836321345134e-12 + -0.000181802559614182 * v[11] + v[5]; + y[68] = -0.000915578970909103 * v[10] + 0.000353197440385818 * v[2] + 0.0574301657419205 * v[4] + + v[7]; + y[69] = -0.000915578970909103 * v[12] + 0.000353197440385818 * v[9] + 0.0574301657419205 * v[3] + + v[6]; + y[70] = -0.000915578970909103 * v[1] + -1.1779127410455e-11 + 0.000353197440385818 * v[11] + v[5]; + v[8] = cos(x[3]); + v[0] = sin(x[3]); + v[13] = v[10] * v[8] + v[2] * v[0]; + v[14] = -v[0]; + v[2] = v[10] * v[14] + v[2] * v[8]; + v[7] = v[7] + -0.57155 * v[10] + 0.17415 * v[4]; + y[72] = -3.24659049510956e-06 * v[13] + -0.0088331080224514 * v[2] + -0.0100402649126053 * v[4] + + v[7]; + v[10] = v[12] * v[8] + v[9] * v[0]; + v[9] = v[12] * v[14] + v[9] * v[8]; + v[6] = v[6] + -0.57155 * v[12] + 0.17415 * v[3]; + y[73] = -3.24659049510956e-06 * v[10] + -0.0088331080224514 * v[9] + -0.0100402649126053 * v[3] + + v[6]; + v[0] = v[1] * v[8] + v[11] * v[0]; + v[14] = v[1] * v[14] + v[11] * v[8]; + v[5] = v[5] + -3.57187727395569e-11 + -0.57155 * v[1]; + y[74] = -3.24659049510956e-06 * v[0] + 2.05929337156644e-12 + -0.0088331080224514 * v[14] + v[5]; + v[1] = cos(x[4]); + v[8] = sin(x[4]); + v[11] = -2.05103489747671e-10 * v[8]; + v[12] = v[13] * v[1] + v[2] * v[11] + v[4] * v[8]; + v[15] = -v[8]; + v[16] = -2.05103489747671e-10 * v[1]; + v[13] = v[13] * v[15] + v[2] * v[16] + v[4] * v[1]; + v[17] = -1. * v[2] + -2.05103489747671e-10 * v[4]; + v[7] = v[7] + -0.11985 * v[2] + -2.45816459075624e-11 * v[4]; + y[76] = -0.000313147310428718 * v[12] + 0.00790893117351034 * v[13] + + -0.0025966766253855 * v[17] + v[7]; + v[2] = v[10] * v[1] + v[9] * v[11] + v[3] * v[8]; + v[10] = v[10] * v[15] + v[9] * v[16] + v[3] * v[1]; + v[4] = -1. * v[9] + -2.05103489747671e-10 * v[3]; + v[6] = v[6] + -0.11985 * v[9] + -2.45816459075624e-11 * v[3]; + y[77] = -0.000313147310428718 * v[2] + 0.00790893117351034 * v[10] + -0.0025966766253855 * v[4] + + v[6]; + v[11] = v[0] * v[1] + v[14] * v[11] + -2.05103489747671e-10 * v[8]; + v[16] = v[0] * v[15] + v[14] * v[16] + -2.05103489747671e-10 * v[1]; + v[15] = 4.2067441506673e-20 + -1. * v[14]; + v[5] = v[5] + 5.04178135938262e-21 + -0.11985 * v[14]; + y[78] = -0.000313147310428718 * v[11] + 0.00790893117351034 * v[16] + + -0.0025966766253855 * v[15] + v[5]; + v[14] = cos(x[5]); + v[1] = sin(x[5]); + v[0] = v[14] + -1.22464679939853e-16 * v[1]; + v[8] = -1.22464679914735e-16 * v[14] + -2.05103489747671e-10 * v[1]; + v[9] = -1.22464679914735e-16 * v[14] + -1. * v[1]; + v[3] = v[12] * v[0] + v[13] * v[8] + v[17] * v[9]; + v[1] = -v[1]; + v[18] = v[1] + -1.22464679939853e-16 * v[14]; + v[19] = -1.22464679914735e-16 * v[1] + -2.05103489747671e-10 * v[14]; + v[1] = -1.22464679914735e-16 * v[1] + -1. * v[14]; + v[14] = v[12] * v[18] + v[13] * v[19] + v[17] * v[1]; + v[12] = 1.22464679889617e-16 * v[12] + v[13] + -2.05103489747671e-10 * v[17]; + v[7] = v[7] + 0.11655 * v[13] + -2.39048045934618e-11 * v[17]; + y[80] = -0.00017564292037487 * v[3] + -0.00074144667053222 * v[14] + -0.0244805331659317 * v[12] + + v[7]; + v[17] = v[2] * v[0] + v[10] * v[8] + v[4] * v[9]; + v[13] = v[2] * v[18] + v[10] * v[19] + v[4] * v[1]; + v[2] = 1.22464679889617e-16 * v[2] + v[10] + -2.05103489747671e-10 * v[4]; + v[6] = v[6] + 0.11655 * v[10] + -2.39048045934618e-11 * v[4]; + y[81] = -0.00017564292037487 * v[17] + -0.00074144667053222 * v[13] + -0.0244805331659317 * v[2] + + v[6]; + v[9] = v[11] * v[0] + v[16] * v[8] + v[15] * v[9]; + v[1] = v[11] * v[18] + v[16] * v[19] + v[15] * v[1]; + v[11] = 1.22464679889617e-16 * v[11] + v[16] + -2.05103489747671e-10 * v[15]; + v[5] = v[5] + 0.11655 * v[16] + -2.39048045934618e-11 * v[15]; + y[82] = -0.00017564292037487 * v[9] + -0.00074144667053222 * v[1] + -0.0244805331659317 * v[11] + + v[5]; + y[84] = 0.00107514814060296 * v[3] + 0.000423320496660516 * v[14] + -0.00408291128903037 * v[12] + + v[7]; + y[85] = 0.00107514814060296 * v[17] + 0.000423320496660516 * v[13] + -0.00408291128903037 * v[2] + + v[6]; + y[86] = 0.00107514814060296 * v[9] + 0.000423320496660516 * v[1] + -0.00408291128903037 * v[11] + + v[5]; + y[88] = -0.000199851859397042 * v[3] + 7.63204966605162e-05 * v[14] + 0.0231310887109696 * v[12] + + v[7]; + y[89] = -0.000199851859397042 * v[17] + 7.63204966605162e-05 * v[13] + 0.0231310887109696 * v[2] + + v[6]; + y[90] = -0.000199851859397042 * v[9] + 7.63204966605162e-05 * v[1] + 0.0231310887109696 * v[11] + + v[5]; + y[92] = + 0.0444889418603304 * v[3] + 0.00804466059900797 * v[14] + 0.0746938738375369 * v[12] + v[7]; + y[93] = + 0.0444889418603304 * v[17] + 0.00804466059900797 * v[13] + 0.0746938738375369 * v[2] + v[6]; + y[94] = + 0.0444889418603304 * v[9] + 0.00804466059900797 * v[1] + 0.0746938738375369 * v[11] + v[5]; + y[96] = + 0.0143949418603304 * v[3] + -0.015607339400992 * v[14] + 0.0342678738375368 * v[12] + v[7]; + y[97] = + 0.0143949418603304 * v[17] + -0.015607339400992 * v[13] + 0.0342678738375368 * v[2] + v[6]; + y[98] = 0.0143949418603304 * v[9] + -0.015607339400992 * v[1] + 0.0342678738375368 * v[11] + v[5]; + y[100] = + 0.0450229418603304 * v[3] + -0.00814133940099203 * v[14] + 0.0747888738375369 * v[12] + v[7]; + y[101] = + 0.0450229418603304 * v[17] + -0.00814133940099203 * v[13] + 0.0747888738375369 * v[2] + v[6]; + y[102] = + 0.0450229418603304 * v[9] + -0.00814133940099203 * v[1] + 0.0747888738375369 * v[11] + v[5]; + y[104] = + 0.0349399418603304 * v[3] + 0.00851466059900797 * v[14] + 0.0614948738375369 * v[12] + v[7]; + y[105] = + 0.0349399418603304 * v[17] + 0.00851466059900797 * v[13] + 0.0614948738375369 * v[2] + v[6]; + y[106] = + 0.0349399418603304 * v[9] + 0.00851466059900797 * v[1] + 0.0614948738375369 * v[11] + v[5]; + y[108] = + 0.0155629418603304 * v[3] + 0.015429660599008 * v[14] + 0.0357898738375369 * v[12] + v[7]; + y[109] = + 0.0155629418603304 * v[17] + 0.015429660599008 * v[13] + 0.0357898738375369 * v[2] + v[6]; + y[110] = 0.0155629418603304 * v[9] + 0.015429660599008 * v[1] + 0.0357898738375369 * v[11] + v[5]; + y[112] = + 0.0231689418603304 * v[3] + -0.014684339400992 * v[14] + 0.0463518738375369 * v[12] + v[7]; + y[113] = + 0.0231689418603304 * v[17] + -0.014684339400992 * v[13] + 0.0463518738375369 * v[2] + v[6]; + y[114] = + 0.0231689418603304 * v[9] + -0.014684339400992 * v[1] + 0.0463518738375369 * v[11] + v[5]; + y[116] = + 0.0331909418603304 * v[3] + -0.011181339400992 * v[14] + 0.0599398738375369 * v[12] + v[7]; + y[117] = + 0.0331909418603304 * v[17] + -0.011181339400992 * v[13] + 0.0599398738375369 * v[2] + v[6]; + y[118] = + 0.0331909418603304 * v[9] + -0.011181339400992 * v[1] + 0.0599398738375369 * v[11] + v[5]; + y[120] = + 0.0263189418603304 * v[3] + 0.013959660599008 * v[14] + 0.0511568738375369 * v[12] + v[7]; + y[121] = + 0.0263189418603304 * v[17] + 0.013959660599008 * v[13] + 0.0511568738375369 * v[2] + v[6]; + y[122] = 0.0263189418603304 * v[9] + 0.013959660599008 * v[1] + 0.0511568738375369 * v[11] + v[5]; + y[124] = + 0.0623787980982067 * v[3] + -0.000234199006115228 * v[14] + 0.0721059691962172 * v[12] + v[7]; + y[125] = + 0.0623787980982067 * v[17] + -0.000234199006115228 * v[13] + 0.0721059691962172 * v[2] + v[6]; + y[126] = + 0.0623787980982067 * v[9] + -0.000234199006115228 * v[1] + 0.0721059691962172 * v[11] + v[5]; + y[128] = + 0.0487957980982067 * v[3] + -4.01990061152315e-05 * v[14] + 0.0788669691962172 * v[12] + v[7]; + y[129] = + 0.0487957980982067 * v[17] + -4.01990061152315e-05 * v[13] + 0.0788669691962172 * v[2] + v[6]; + y[130] = + 0.0487957980982067 * v[9] + -4.01990061152315e-05 * v[1] + 0.0788669691962172 * v[11] + v[5]; + y[132] = + 0.0445177980982067 * v[3] + 0.00426880099388477 * v[14] + 0.112418969196217 * v[12] + v[7]; + y[133] = + 0.0445177980982067 * v[17] + 0.00426880099388477 * v[13] + 0.112418969196217 * v[2] + v[6]; + y[134] = + 0.0445177980982067 * v[9] + 0.00426880099388477 * v[1] + 0.112418969196217 * v[11] + v[5]; + y[136] = + 0.0445317980982067 * v[3] + -0.00397219900611523 * v[14] + 0.113735969196217 * v[12] + v[7]; + y[137] = + 0.0445317980982067 * v[17] + -0.00397219900611523 * v[13] + 0.113735969196217 * v[2] + v[6]; + y[138] = + 0.0445317980982067 * v[9] + -0.00397219900611523 * v[1] + 0.113735969196217 * v[11] + v[5]; + y[140] = + 0.0461197980982067 * v[3] + 0.000114800993884768 * v[14] + 0.103681969196217 * v[12] + v[7]; + y[141] = + 0.0461197980982067 * v[17] + 0.000114800993884768 * v[13] + 0.103681969196217 * v[2] + v[6]; + y[142] = + 0.0461197980982067 * v[9] + 0.000114800993884768 * v[1] + 0.103681969196217 * v[11] + v[5]; + y[144] = + 0.0460907980982067 * v[3] + -0.00245419900611523 * v[14] + 0.0926159691962172 * v[12] + v[7]; + y[145] = + 0.0460907980982067 * v[17] + -0.00245419900611523 * v[13] + 0.0926159691962172 * v[2] + v[6]; + y[146] = + 0.0460907980982067 * v[9] + -0.00245419900611523 * v[1] + 0.0926159691962172 * v[11] + v[5]; + y[148] = + 0.0441217980982067 * v[3] + 0.00562580099388477 * v[14] + 0.0930719691962172 * v[12] + v[7]; + y[149] = + 0.0441217980982067 * v[17] + 0.00562580099388477 * v[13] + 0.0930719691962172 * v[2] + v[6]; + y[150] = + 0.0441217980982067 * v[9] + 0.00562580099388477 * v[1] + 0.0930719691962172 * v[11] + v[5]; + y[152] = + 0.0552620541990758 * v[3] + 1.22706409919795e-17 * v[14] + 0.0331275379870581 * v[12] + v[7]; + y[153] = + 0.0552620541990758 * v[17] + 1.22706409919795e-17 * v[13] + 0.0331275379870581 * v[2] + v[6]; + y[154] = + 0.0552620541990758 * v[9] + 1.22706409919795e-17 * v[1] + 0.0331275379870581 * v[11] + v[5]; + y[156] = + 0.0311880541990758 * v[3] + 6.92513917301426e-18 * v[14] + 0.0254065379870581 * v[12] + v[7]; + y[157] = + 0.0311880541990758 * v[17] + 6.92513917301426e-18 * v[13] + 0.0254065379870581 * v[2] + v[6]; + y[158] = + 0.0311880541990758 * v[9] + 6.92513917301426e-18 * v[1] + 0.0254065379870581 * v[11] + v[5]; + y[160] = + 0.0585960541990758 * v[3] + 1.30109377047995e-17 * v[14] + 0.0278055379870581 * v[12] + v[7]; + y[161] = + 0.0585960541990758 * v[17] + 1.30109377047995e-17 * v[13] + 0.0278055379870581 * v[2] + v[6]; + y[162] = + 0.0585960541990758 * v[9] + 1.30109377047995e-17 * v[1] + 0.0278055379870581 * v[11] + v[5]; + y[164] = + 0.0453500541990758 * v[3] + 1.00697348679625e-17 * v[14] + 0.0262125379870581 * v[12] + v[7]; + y[165] = + 0.0453500541990758 * v[17] + 1.00697348679625e-17 * v[13] + 0.0262125379870581 * v[2] + v[6]; + y[166] = + 0.0453500541990758 * v[9] + 1.00697348679625e-17 * v[1] + 0.0262125379870581 * v[11] + v[5]; + y[168] = + 0.0635240541990758 * v[3] + 1.41051735178701e-17 * v[14] + 0.0330105379870581 * v[12] + v[7]; + y[169] = + 0.0635240541990758 * v[17] + 1.41051735178701e-17 * v[13] + 0.0330105379870581 * v[2] + v[6]; + y[170] = + 0.0635240541990758 * v[9] + 1.41051735178701e-17 * v[1] + 0.0330105379870581 * v[11] + v[5]; + y[172] = + 0.0651264623038461 * v[3] + 0.00851800000000001 * v[14] + 0.070495068913942 * v[12] + v[7]; + y[173] = + 0.0651264623038461 * v[17] + 0.00851800000000001 * v[13] + 0.070495068913942 * v[2] + v[6]; + y[174] = + 0.0651264623038461 * v[9] + 0.00851800000000001 * v[1] + 0.070495068913942 * v[11] + v[5]; + y[176] = + 0.0643414623038461 * v[3] + 0.00624200000000001 * v[14] + 0.055076068913942 * v[12] + v[7]; + y[177] = + 0.0643414623038461 * v[17] + 0.00624200000000001 * v[13] + 0.055076068913942 * v[2] + v[6]; + y[178] = + 0.0643414623038461 * v[9] + 0.00624200000000001 * v[1] + 0.055076068913942 * v[11] + v[5]; + y[180] = + 0.0649744623038461 * v[3] + -0.00847699999999999 * v[14] + 0.069285068913942 * v[12] + v[7]; + y[181] = + 0.0649744623038461 * v[17] + -0.00847699999999999 * v[13] + 0.069285068913942 * v[2] + v[6]; + y[182] = + 0.0649744623038461 * v[9] + -0.00847699999999999 * v[1] + 0.069285068913942 * v[11] + v[5]; + y[184] = + 0.0643704623038461 * v[3] + -0.00630099999999999 * v[14] + 0.054502068913942 * v[12] + v[7]; + y[185] = + 0.0643704623038461 * v[17] + -0.00630099999999999 * v[13] + 0.054502068913942 * v[2] + v[6]; + y[186] = + 0.0643704623038461 * v[9] + -0.00630099999999999 * v[1] + 0.054502068913942 * v[11] + v[5]; + y[188] = + 0.0633094623038461 * v[3] + -0.00602399999999999 * v[14] + 0.040743068913942 * v[12] + v[7]; + y[189] = + 0.0633094623038461 * v[17] + -0.00602399999999999 * v[13] + 0.040743068913942 * v[2] + v[6]; + y[190] = + 0.0633094623038461 * v[9] + -0.00602399999999999 * v[1] + 0.040743068913942 * v[11] + v[5]; + y[192] = + 0.0631514623038461 * v[3] + 0.00523600000000001 * v[14] + 0.037942068913942 * v[12] + v[7]; + y[193] = + 0.0631514623038461 * v[17] + 0.00523600000000001 * v[13] + 0.037942068913942 * v[2] + v[6]; + y[194] = + 0.0631514623038461 * v[9] + 0.00523600000000001 * v[1] + 0.037942068913942 * v[11] + v[5]; + y[196] = + 0.0622994623038461 * v[3] + 0.00742700000000001 * v[14] + 0.024559068913942 * v[12] + v[7]; + y[197] = + 0.0622994623038461 * v[17] + 0.00742700000000001 * v[13] + 0.024559068913942 * v[2] + v[6]; + y[198] = + 0.0622994623038461 * v[9] + 0.00742700000000001 * v[1] + 0.024559068913942 * v[11] + v[5]; + y[200] = + 0.0625164623038461 * v[3] + -0.00732999999999999 * v[14] + 0.027526068913942 * v[12] + v[7]; + y[201] = + 0.0625164623038461 * v[17] + -0.00732999999999999 * v[13] + 0.027526068913942 * v[2] + v[6]; + y[202] = + 0.0625164623038461 * v[9] + -0.00732999999999999 * v[1] + 0.027526068913942 * v[11] + v[5]; + y[204] = + -0.0444889418600303 * v[3] + -0.00804466059900787 * v[14] + 0.074693873837609 * v[12] + v[7]; + y[205] = + -0.0444889418600303 * v[17] + -0.00804466059900787 * v[13] + 0.074693873837609 * v[2] + v[6]; + y[206] = + -0.0444889418600303 * v[9] + -0.00804466059900787 * v[1] + 0.074693873837609 * v[11] + v[5]; + y[208] = + -0.0143949418600302 * v[3] + 0.015607339400992 * v[14] + 0.0342678738376091 * v[12] + v[7]; + y[209] = + -0.0143949418600302 * v[17] + 0.015607339400992 * v[13] + 0.0342678738376091 * v[2] + v[6]; + y[210] = + -0.0143949418600302 * v[9] + 0.015607339400992 * v[1] + 0.0342678738376091 * v[11] + v[5]; + y[212] = + -0.0450229418600302 * v[3] + 0.00814133940099214 * v[14] + 0.074788873837609 * v[12] + v[7]; + y[213] = + -0.0450229418600302 * v[17] + 0.00814133940099214 * v[13] + 0.074788873837609 * v[2] + v[6]; + y[214] = + -0.0450229418600302 * v[9] + 0.00814133940099214 * v[1] + 0.074788873837609 * v[11] + v[5]; + y[216] = + -0.0349399418600303 * v[3] + -0.00851466059900789 * v[14] + 0.0614948738376091 * v[12] + v[7]; + y[217] = + -0.0349399418600303 * v[17] + -0.00851466059900789 * v[13] + 0.0614948738376091 * v[2] + v[6]; + y[218] = + -0.0349399418600303 * v[9] + -0.00851466059900789 * v[1] + 0.0614948738376091 * v[11] + v[5]; + y[220] = + -0.0155629418600303 * v[3] + -0.015429660599008 * v[14] + 0.0357898738376091 * v[12] + v[7]; + y[221] = + -0.0155629418600303 * v[17] + -0.015429660599008 * v[13] + 0.0357898738376091 * v[2] + v[6]; + y[222] = + -0.0155629418600303 * v[9] + -0.015429660599008 * v[1] + 0.0357898738376091 * v[11] + v[5]; + y[224] = + -0.0231689418600302 * v[3] + 0.0146843394009921 * v[14] + 0.0463518738376091 * v[12] + v[7]; + y[225] = + -0.0231689418600302 * v[17] + 0.0146843394009921 * v[13] + 0.0463518738376091 * v[2] + v[6]; + y[226] = + -0.0231689418600302 * v[9] + 0.0146843394009921 * v[1] + 0.0463518738376091 * v[11] + v[5]; + y[228] = + -0.0331909418600302 * v[3] + 0.0111813394009921 * v[14] + 0.0599398738376091 * v[12] + v[7]; + y[229] = + -0.0331909418600302 * v[17] + 0.0111813394009921 * v[13] + 0.0599398738376091 * v[2] + v[6]; + y[230] = + -0.0331909418600302 * v[9] + 0.0111813394009921 * v[1] + 0.0599398738376091 * v[11] + v[5]; + y[232] = + -0.0263189418600303 * v[3] + -0.0139596605990079 * v[14] + 0.0511568738376091 * v[12] + v[7]; + y[233] = + -0.0263189418600303 * v[17] + -0.0139596605990079 * v[13] + 0.0511568738376091 * v[2] + v[6]; + y[234] = + -0.0263189418600303 * v[9] + -0.0139596605990079 * v[1] + 0.0511568738376091 * v[11] + v[5]; + y[236] = + -0.0618995347823531 * v[3] + 0.000234199006115388 * v[14] + 0.0724663376686607 * v[12] + v[7]; + y[237] = + -0.0618995347823531 * v[17] + 0.000234199006115388 * v[13] + 0.0724663376686607 * v[2] + v[6]; + y[238] = + -0.0618995347823531 * v[9] + 0.000234199006115388 * v[1] + 0.0724663376686607 * v[11] + v[5]; + y[240] = + -0.0483165347823531 * v[3] + 4.01990061153467e-05 * v[14] + 0.0792273376686607 * v[12] + v[7]; + y[241] = + -0.0483165347823531 * v[17] + 4.01990061153467e-05 * v[13] + 0.0792273376686607 * v[2] + v[6]; + y[242] = + -0.0483165347823531 * v[9] + 4.01990061153467e-05 * v[1] + 0.0792273376686607 * v[11] + v[5]; + y[244] = + -0.0440385347823531 * v[3] + -0.00426880099388467 * v[14] + 0.112779337668661 * v[12] + v[7]; + y[245] = + -0.0440385347823531 * v[17] + -0.00426880099388467 * v[13] + 0.112779337668661 * v[2] + v[6]; + y[246] = + -0.0440385347823531 * v[9] + -0.00426880099388467 * v[1] + 0.112779337668661 * v[11] + v[5]; + y[248] = + -0.0440525347823531 * v[3] + 0.00397219900611533 * v[14] + 0.114096337668661 * v[12] + v[7]; + y[249] = + -0.0440525347823531 * v[17] + 0.00397219900611533 * v[13] + 0.114096337668661 * v[2] + v[6]; + y[250] = + -0.0440525347823531 * v[9] + 0.00397219900611533 * v[1] + 0.114096337668661 * v[11] + v[5]; + y[252] = + -0.0456405347823531 * v[3] + -0.000114800993884661 * v[14] + 0.104042337668661 * v[12] + v[7]; + y[253] = + -0.0456405347823531 * v[17] + -0.000114800993884661 * v[13] + 0.104042337668661 * v[2] + v[6]; + y[254] = + -0.0456405347823531 * v[9] + -0.000114800993884661 * v[1] + 0.104042337668661 * v[11] + v[5]; + y[256] = + -0.0456115347823531 * v[3] + 0.00245419900611534 * v[14] + 0.0929763376686607 * v[12] + v[7]; + y[257] = + -0.0456115347823531 * v[17] + 0.00245419900611534 * v[13] + 0.0929763376686607 * v[2] + v[6]; + y[258] = + -0.0456115347823531 * v[9] + 0.00245419900611534 * v[1] + 0.0929763376686607 * v[11] + v[5]; + y[260] = + -0.0436425347823531 * v[3] + -0.00562580099388467 * v[14] + 0.0934323376686607 * v[12] + v[7]; + y[261] = + -0.0436425347823531 * v[17] + -0.00562580099388467 * v[13] + 0.0934323376686607 * v[2] + v[6]; + y[262] = + -0.0436425347823531 * v[9] + -0.00562580099388467 * v[1] + 0.0934323376686607 * v[11] + v[5]; + y[264] = + -0.0552620541989112 * v[3] + 6.74109569768114e-17 * v[14] + 0.0331275379870581 * v[12] + v[7]; + y[265] = + -0.0552620541989112 * v[17] + 6.74109569768114e-17 * v[13] + 0.0331275379870581 * v[2] + v[6]; + y[266] = + -0.0552620541989112 * v[9] + 6.74109569768114e-17 * v[1] + 0.0331275379870581 * v[11] + v[5]; + y[268] = -0.0311880541989112 * v[3] + -5.02878137400361e-18 * v[14] + 0.0254065379870581 * v[12] + + v[7]; + y[269] = -0.0311880541989112 * v[17] + -5.02878137400361e-18 * v[13] + 0.0254065379870581 * v[2] + + v[6]; + y[270] = + -0.0311880541989112 * v[9] + -5.02878137400361e-18 * v[1] + 0.0254065379870581 * v[11] + v[5]; + y[272] = + -0.0585960541989112 * v[3] + 7.74431114863078e-17 * v[14] + 0.0278055379870581 * v[12] + v[7]; + y[273] = + -0.0585960541989112 * v[17] + 7.74431114863078e-17 * v[13] + 0.0278055379870581 * v[2] + v[6]; + y[274] = + -0.0585960541989112 * v[9] + 7.74431114863078e-17 * v[1] + 0.0278055379870581 * v[11] + v[5]; + y[276] = + -0.0453500541989112 * v[3] + 3.75853074572767e-17 * v[14] + 0.0262125379870581 * v[12] + v[7]; + y[277] = + -0.0453500541989112 * v[17] + 3.75853074572767e-17 * v[13] + 0.0262125379870581 * v[2] + v[6]; + y[278] = + -0.0453500541989112 * v[9] + 3.75853074572767e-17 * v[1] + 0.0262125379870581 * v[11] + v[5]; + y[280] = + -0.0635240541989112 * v[3] + 9.22716829988448e-17 * v[14] + 0.0330105379870581 * v[12] + v[7]; + y[281] = + -0.0635240541989112 * v[17] + 9.22716829988448e-17 * v[13] + 0.0330105379870581 * v[2] + v[6]; + y[282] = + -0.0635240541989112 * v[9] + 9.22716829988448e-17 * v[1] + 0.0330105379870581 * v[11] + v[5]; + y[284] = + -0.0651450090137519 * v[3] + -0.0085179999999999 * v[14] + 0.0708276761757193 * v[12] + v[7]; + y[285] = + -0.0651450090137519 * v[17] + -0.0085179999999999 * v[13] + 0.0708276761757193 * v[2] + v[6]; + y[286] = + -0.0651450090137519 * v[9] + -0.0085179999999999 * v[1] + 0.0708276761757193 * v[11] + v[5]; + y[288] = + -0.0643600090137519 * v[3] + -0.00624199999999991 * v[14] + 0.0554086761757193 * v[12] + v[7]; + y[289] = + -0.0643600090137519 * v[17] + -0.00624199999999991 * v[13] + 0.0554086761757193 * v[2] + v[6]; + y[290] = + -0.0643600090137519 * v[9] + -0.00624199999999991 * v[1] + 0.0554086761757193 * v[11] + v[5]; + y[292] = + -0.0649930090137518 * v[3] + 0.0084770000000001 * v[14] + 0.0696176761757193 * v[12] + v[7]; + y[293] = + -0.0649930090137518 * v[17] + 0.0084770000000001 * v[13] + 0.0696176761757193 * v[2] + v[6]; + y[294] = + -0.0649930090137518 * v[9] + 0.0084770000000001 * v[1] + 0.0696176761757193 * v[11] + v[5]; + y[296] = + -0.0643890090137518 * v[3] + 0.00630100000000009 * v[14] + 0.0548346761757193 * v[12] + v[7]; + y[297] = + -0.0643890090137518 * v[17] + 0.00630100000000009 * v[13] + 0.0548346761757193 * v[2] + v[6]; + y[298] = + -0.0643890090137518 * v[9] + 0.00630100000000009 * v[1] + 0.0548346761757193 * v[11] + v[5]; + y[300] = + -0.0633280090137518 * v[3] + 0.00602400000000009 * v[14] + 0.0410756761757193 * v[12] + v[7]; + y[301] = + -0.0633280090137518 * v[17] + 0.00602400000000009 * v[13] + 0.0410756761757193 * v[2] + v[6]; + y[302] = + -0.0633280090137518 * v[9] + 0.00602400000000009 * v[1] + 0.0410756761757193 * v[11] + v[5]; + y[304] = + -0.0631700090137519 * v[3] + -0.00523599999999991 * v[14] + 0.0382746761757193 * v[12] + v[7]; + y[305] = + -0.0631700090137519 * v[17] + -0.00523599999999991 * v[13] + 0.0382746761757193 * v[2] + v[6]; + y[306] = + -0.0631700090137519 * v[9] + -0.00523599999999991 * v[1] + 0.0382746761757193 * v[11] + v[5]; + y[308] = + -0.0623180090137519 * v[3] + -0.00742699999999991 * v[14] + 0.0248916761757193 * v[12] + v[7]; + y[309] = + -0.0623180090137519 * v[17] + -0.00742699999999991 * v[13] + 0.0248916761757193 * v[2] + v[6]; + y[310] = + -0.0623180090137519 * v[9] + -0.00742699999999991 * v[1] + 0.0248916761757193 * v[11] + v[5]; + y[312] = + -0.0625350090137518 * v[3] + 0.00733000000000009 * v[14] + 0.0278586761757193 * v[12] + v[7]; + y[313] = + -0.0625350090137518 * v[17] + 0.00733000000000009 * v[13] + 0.0278586761757193 * v[2] + v[6]; + y[314] = + -0.0625350090137518 * v[9] + 0.00733000000000009 * v[1] + 0.0278586761757193 * v[11] + v[5]; + // dependent variables without operations + y[0] = -6.44109725952151e-07; + y[1] = -1.16391277313232e-05; + y[2] = 0.0496443499687567; + y[3] = 0.107271999120712; + y[6] = 0.179449425041044; + y[7] = 0.122019000351429; + y[11] = 0.100000001490116; + y[15] = 0.100000001490116; + y[19] = 0.100000001490116; + y[23] = 0.100000001490116; + y[27] = 0.100000001490116; + y[31] = 0.100000001490116; + y[35] = 0.100000001490116; + y[39] = 0.100000001490116; + y[43] = 0.0770189985632896; + y[47] = 0.0817079991102219; + y[51] = 0.0797109976410866; + y[55] = 0.0832929983735085; + y[59] = 0.0817840024828911; + y[63] = 0.0878330022096634; + y[67] = 0.0887719988822937; + y[71] = 0.0726329982280731; + y[75] = 0.079586997628212; + y[79] = 0.0813139975070953; + y[83] = 0.0526160001754761; + y[87] = 0.0545889995992184; + y[91] = 0.045889999717474; + y[95] = 0.012109000235796; + y[99] = 0.0106359999626875; + y[103] = 0.0114740002900362; + y[107] = 0.0123990001156926; + y[111] = 0.0122360000386834; + y[115] = 0.0108470004051924; + y[119] = 0.0130009995773435; + y[123] = 0.0118150003254414; + y[127] = 0.012601999565959; + y[131] = 0.0133750000968575; + y[135] = 0.0122199999168515; + y[139] = 0.011315000243485; + y[143] = 0.0134969996288419; + y[147] = 0.0131989996880293; + y[151] = 0.0117070004343987; + y[155] = 0.012431999668479; + y[159] = 0.00987400021404028; + y[163] = 0.0122570004314184; + y[167] = 0.00966900028288364; + y[171] = 0.00865000020712614; + y[175] = 0.00920400023460388; + y[179] = 0.0123479999601841; + y[183] = 0.00932999979704618; + y[187] = 0.0117380004376173; + y[191] = 0.00990500021725893; + y[195] = 0.0116910003125668; + y[199] = 0.00942999962717295; + y[203] = 0.0107370000332594; + y[207] = 0.012109000235796; + y[211] = 0.0106359999626875; + y[215] = 0.0114740002900362; + y[219] = 0.0123990001156926; + y[223] = 0.0122360000386834; + y[227] = 0.0108470004051924; + y[231] = 0.0130009995773435; + y[235] = 0.0118150003254414; + y[239] = 0.012601999565959; + y[243] = 0.0133750000968575; + y[247] = 0.0122199999168515; + y[251] = 0.011315000243485; + y[255] = 0.0134969996288419; + y[259] = 0.0131989996880293; + y[263] = 0.0117070004343987; + y[267] = 0.012431999668479; + y[271] = 0.00987400021404028; + y[275] = 0.0122570004314184; + y[279] = 0.00966900028288364; + y[283] = 0.00865000020712614; + y[287] = 0.00920400023460388; + y[291] = 0.0123479999601841; + y[295] = 0.00932999979704618; + y[299] = 0.0117380004376173; + y[303] = 0.00990500021725893; + y[307] = 0.0116910003125668; + y[311] = 0.00942999962717295; + y[315] = 0.0107370000332594; + + for (auto i = 0U; i < 79; ++i) + { + out.x[i] = y[i * 4 + 0]; + out.y[i] = y[i * 4 + 1]; + out.z[i] = y[i * 4 + 2]; + out.r[i] = y[i * 4 + 3]; + } + } + + using Debug = std:: + pair>, std::vector>>; + + template + inline static auto fkcc_debug( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept -> Debug + { + std::array, 56> v; + std::array, 380> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -1. * v[0] + -1.22464679914735e-16 * v[1]; + v[3] = -v[1]; + v[4] = -1. * v[3] + -1.22464679914735e-16 * v[0]; + y[4] = -0.000288299505126466 * v[2] + -0.00873530766096221 * v[4]; + v[1] = 1.22464679914735e-16 * v[0] + -1. * v[1]; + v[3] = 1.22464679914735e-16 * v[3] + -1. * v[0]; + y[5] = -0.000288299505126466 * v[1] + -0.00873530766096221 * v[3]; + v[0] = cos(x[1]); + v[5] = sin(x[1]); + v[6] = -2.05103489747671e-10 * v[5]; + v[7] = v[2] * v[0] + v[4] * v[6]; + v[8] = -v[5]; + v[9] = -2.05103489747671e-10 * v[0]; + v[10] = v[2] * v[8] + v[4] * v[9]; + v[11] = -1. * v[4]; + y[8] = -0.607041969037533 * v[7] + 1.42804932594299e-06 * v[10] + 0.16623906538415 * v[11]; + v[6] = v[1] * v[0] + v[3] * v[6]; + v[9] = v[1] * v[8] + v[3] * v[9]; + v[8] = -1. * v[3]; + y[9] = -0.607041969037533 * v[6] + 1.42804932594299e-06 * v[9] + 0.16623906538415 * v[8]; + y[10] = 0.1807 + -0.607041969037533 * v[5] + -3.40962124426803e-11 + 1.42804932594299e-06 * v[0]; + y[12] = 0.000413030962467198 * v[7] + 5.42804932594299e-06 * v[10] + 0.17160506538415 * v[11]; + y[13] = 0.000413030962467198 * v[6] + 5.42804932594299e-06 * v[9] + 0.17160506538415 * v[8]; + y[14] = + 0.1807 + 0.000413030962467198 * v[5] + -3.51967977686664e-11 + 5.42804932594299e-06 * v[0]; + y[16] = -0.516884969037533 * v[7] + 3.42804932594299e-06 * v[10] + 0.16899706538415 * v[11]; + y[17] = -0.516884969037533 * v[6] + 3.42804932594299e-06 * v[9] + 0.16899706538415 * v[8]; + y[18] = 0.1807 + -0.516884969037533 * v[5] + -3.46618878674044e-11 + 3.42804932594299e-06 * v[0]; + y[20] = -0.423410969037533 * v[7] + 9.42804932594299e-06 * v[10] + 0.17053706538415 * v[11]; + y[21] = -0.423410969037533 * v[6] + 9.42804932594299e-06 * v[9] + 0.17053706538415 * v[8]; + y[22] = 0.1807 + -0.423410969037533 * v[5] + -3.49777472416158e-11 + 9.42804932594299e-06 * v[0]; + y[24] = -0.328266969037533 * v[7] + 1.2428049325943e-05 * v[10] + 0.17244706538415 * v[11]; + y[25] = -0.328266969037533 * v[6] + 1.2428049325943e-05 * v[9] + 0.17244706538415 * v[8]; + y[26] = 0.1807 + -0.328266969037533 * v[5] + -3.53694949070339e-11 + 1.2428049325943e-05 * v[0]; + y[28] = -0.225282969037533 * v[7] + 1.8428049325943e-05 * v[10] + 0.17491006538415 * v[11]; + y[29] = -0.225282969037533 * v[6] + 1.8428049325943e-05 * v[9] + 0.17491006538415 * v[8]; + y[30] = 0.1807 + -0.225282969037533 * v[5] + -3.58746648022824e-11 + 1.8428049325943e-05 * v[0]; + y[32] = -0.129197969037533 * v[7] + 2.6428049325943e-05 * v[10] + 0.17046706538415 * v[11]; + y[33] = -0.129197969037533 * v[6] + 2.6428049325943e-05 * v[9] + 0.17046706538415 * v[8]; + y[34] = 0.1807 + -0.129197969037533 * v[5] + -3.49633899973335e-11 + 2.6428049325943e-05 * v[0]; + y[36] = -0.0292619690375328 * v[7] + 6.42804932594299e-06 * v[10] + 0.17915506538415 * v[11]; + y[37] = -0.0292619690375328 * v[6] + 6.42804932594299e-06 * v[9] + 0.17915506538415 * v[8]; + y[38] = 0.1807 + -0.0292619690375328 * v[5] + -3.67453291162613e-11 + 6.42804932594299e-06 * v[0]; + v[12] = cos(x[2]); + v[13] = sin(x[2]); + v[14] = v[7] * v[12] + v[10] * v[13]; + v[15] = -v[13]; + v[16] = v[7] * v[15] + v[10] * v[12]; + v[17] = -0.6127 * v[7]; + y[40] = -0.563005578970909 * v[14] + 6.19744038581848e-06 * v[16] + 0.0494461657419205 * v[11] + + v[17]; + v[18] = v[6] * v[12] + v[9] * v[13]; + v[19] = v[6] * v[15] + v[9] * v[12]; + v[20] = -0.6127 * v[6]; + y[41] = + -0.563005578970909 * v[18] + 6.19744038581848e-06 * v[19] + 0.0494461657419205 * v[8] + v[20]; + v[13] = v[5] * v[12] + v[0] * v[13]; + v[15] = v[5] * v[15] + v[0] * v[12]; + v[12] = 0.1807 + -0.6127 * v[5]; + y[42] = -0.563005578970909 * v[13] + -1.01415811483096e-11 + 6.19744038581848e-06 * v[15] + v[12]; + y[44] = -0.489168578970909 * v[14] + -8.02559614181519e-07 * v[16] + 0.0491121657419205 * v[11] + + v[17]; + y[45] = -0.489168578970909 * v[18] + -8.02559614181519e-07 * v[19] + 0.0491121657419205 * v[8] + + v[20]; + y[46] = + -0.489168578970909 * v[13] + -1.00730765827339e-11 + -8.02559614181519e-07 * v[15] + v[12]; + y[48] = -0.406023578970909 * v[14] + -5.80255961418152e-06 * v[16] + 0.0465401657419205 * v[11] + + v[17]; + y[49] = -0.406023578970909 * v[18] + -5.80255961418152e-06 * v[19] + 0.0465401657419205 * v[8] + + v[20]; + y[50] = + -0.406023578970909 * v[13] + -9.54555040710291e-12 + -5.80255961418152e-06 * v[15] + v[12]; + y[52] = -0.331356578970909 * v[14] + -1.18025596141815e-05 * v[16] + 0.0518921657419205 * v[11] + + v[17]; + y[53] = -0.331356578970909 * v[18] + -1.18025596141815e-05 * v[19] + 0.0518921657419205 * v[8] + + v[20]; + y[54] = + -0.331356578970909 * v[13] + -1.06432642842324e-11 + -1.18025596141815e-05 * v[15] + v[12]; + y[56] = -0.252682578970909 * v[14] + -1.88025596141815e-05 * v[16] + 0.0485491657419205 * v[11] + + v[17]; + y[57] = -0.252682578970909 * v[18] + -1.88025596141815e-05 * v[19] + 0.0485491657419205 * v[8] + + v[20]; + y[58] = + -0.252682578970909 * v[13] + -9.95760331800598e-12 + -1.88025596141815e-05 * v[15] + v[12]; + y[60] = -0.162805578970909 * v[14] + 0.000842197440385818 * v[16] + 0.0465861657419205 * v[11] + + v[17]; + y[61] = + -0.162805578970909 * v[18] + 0.000842197440385818 * v[19] + 0.0465861657419205 * v[8] + v[20]; + y[62] = -0.162805578970909 * v[13] + -9.5549851676313e-12 + 0.000842197440385818 * v[15] + v[12]; + y[64] = -0.0761155789709091 * v[14] + -0.000181802559614182 * v[16] + 0.0427021657419205 * v[11] + + v[17]; + y[65] = -0.0761155789709091 * v[18] + -0.000181802559614182 * v[19] + 0.0427021657419205 * v[8] + + v[20]; + y[66] = + -0.0761155789709091 * v[13] + -8.75836321345134e-12 + -0.000181802559614182 * v[15] + v[12]; + y[68] = -0.000915578970909103 * v[14] + 0.000353197440385818 * v[16] + + 0.0574301657419205 * v[11] + v[17]; + y[69] = -0.000915578970909103 * v[18] + 0.000353197440385818 * v[19] + 0.0574301657419205 * v[8] + + v[20]; + y[70] = + -0.000915578970909103 * v[13] + -1.1779127410455e-11 + 0.000353197440385818 * v[15] + v[12]; + v[21] = cos(x[3]); + v[22] = sin(x[3]); + v[23] = v[14] * v[21] + v[16] * v[22]; + v[24] = -v[22]; + v[25] = v[14] * v[24] + v[16] * v[21]; + v[26] = v[17] + -0.57155 * v[14] + 0.17415 * v[11]; + y[72] = -3.24659049510956e-06 * v[23] + -0.0088331080224514 * v[25] + + -0.0100402649126053 * v[11] + v[26]; + v[27] = v[18] * v[21] + v[19] * v[22]; + v[28] = v[18] * v[24] + v[19] * v[21]; + v[29] = v[20] + -0.57155 * v[18] + 0.17415 * v[8]; + y[73] = -3.24659049510956e-06 * v[27] + -0.0088331080224514 * v[28] + -0.0100402649126053 * v[8] + + v[29]; + v[22] = v[13] * v[21] + v[15] * v[22]; + v[24] = v[13] * v[24] + v[15] * v[21]; + v[21] = v[12] + -3.57187727395569e-11 + -0.57155 * v[13]; + y[74] = + -3.24659049510956e-06 * v[22] + 2.05929337156644e-12 + -0.0088331080224514 * v[24] + v[21]; + v[30] = cos(x[4]); + v[31] = sin(x[4]); + v[32] = -2.05103489747671e-10 * v[31]; + v[33] = v[23] * v[30] + v[25] * v[32] + v[11] * v[31]; + v[34] = -v[31]; + v[35] = -2.05103489747671e-10 * v[30]; + v[36] = v[23] * v[34] + v[25] * v[35] + v[11] * v[30]; + v[37] = -1. * v[25] + -2.05103489747671e-10 * v[11]; + v[38] = v[26] + -0.11985 * v[25] + -2.45816459075624e-11 * v[11]; + y[76] = -0.000313147310428718 * v[33] + 0.00790893117351034 * v[36] + + -0.0025966766253855 * v[37] + v[38]; + v[39] = v[27] * v[30] + v[28] * v[32] + v[8] * v[31]; + v[40] = v[27] * v[34] + v[28] * v[35] + v[8] * v[30]; + v[41] = -1. * v[28] + -2.05103489747671e-10 * v[8]; + v[42] = v[29] + -0.11985 * v[28] + -2.45816459075624e-11 * v[8]; + y[77] = -0.000313147310428718 * v[39] + 0.00790893117351034 * v[40] + + -0.0025966766253855 * v[41] + v[42]; + v[32] = v[22] * v[30] + v[24] * v[32] + -2.05103489747671e-10 * v[31]; + v[35] = v[22] * v[34] + v[24] * v[35] + -2.05103489747671e-10 * v[30]; + v[34] = 4.2067441506673e-20 + -1. * v[24]; + v[30] = v[21] + 5.04178135938262e-21 + -0.11985 * v[24]; + y[78] = -0.000313147310428718 * v[32] + 0.00790893117351034 * v[35] + + -0.0025966766253855 * v[34] + v[30]; + v[31] = cos(x[5]); + v[43] = sin(x[5]); + v[44] = v[31] + -1.22464679939853e-16 * v[43]; + v[45] = -1.22464679914735e-16 * v[31] + -2.05103489747671e-10 * v[43]; + v[46] = -1.22464679914735e-16 * v[31] + -1. * v[43]; + v[47] = v[33] * v[44] + v[36] * v[45] + v[37] * v[46]; + v[43] = -v[43]; + v[48] = v[43] + -1.22464679939853e-16 * v[31]; + v[49] = -1.22464679914735e-16 * v[43] + -2.05103489747671e-10 * v[31]; + v[43] = -1.22464679914735e-16 * v[43] + -1. * v[31]; + v[31] = v[33] * v[48] + v[36] * v[49] + v[37] * v[43]; + v[50] = 1.22464679889617e-16 * v[33] + v[36] + -2.05103489747671e-10 * v[37]; + v[51] = v[38] + 0.11655 * v[36] + -2.39048045934618e-11 * v[37]; + y[80] = -0.00017564292037487 * v[47] + -0.00074144667053222 * v[31] + + -0.0244805331659317 * v[50] + v[51]; + v[52] = v[39] * v[44] + v[40] * v[45] + v[41] * v[46]; + v[53] = v[39] * v[48] + v[40] * v[49] + v[41] * v[43]; + v[54] = 1.22464679889617e-16 * v[39] + v[40] + -2.05103489747671e-10 * v[41]; + v[55] = v[42] + 0.11655 * v[40] + -2.39048045934618e-11 * v[41]; + y[81] = -0.00017564292037487 * v[52] + -0.00074144667053222 * v[53] + + -0.0244805331659317 * v[54] + v[55]; + v[46] = v[32] * v[44] + v[35] * v[45] + v[34] * v[46]; + v[43] = v[32] * v[48] + v[35] * v[49] + v[34] * v[43]; + v[49] = 1.22464679889617e-16 * v[32] + v[35] + -2.05103489747671e-10 * v[34]; + v[48] = v[30] + 0.11655 * v[35] + -2.39048045934618e-11 * v[34]; + y[82] = -0.00017564292037487 * v[46] + -0.00074144667053222 * v[43] + + -0.0244805331659317 * v[49] + v[48]; + y[84] = 0.00107514814060296 * v[47] + 0.000423320496660516 * v[31] + + -0.00408291128903037 * v[50] + v[51]; + y[85] = 0.00107514814060296 * v[52] + 0.000423320496660516 * v[53] + + -0.00408291128903037 * v[54] + v[55]; + y[86] = 0.00107514814060296 * v[46] + 0.000423320496660516 * v[43] + + -0.00408291128903037 * v[49] + v[48]; + y[88] = -0.000199851859397042 * v[47] + 7.63204966605162e-05 * v[31] + + 0.0231310887109696 * v[50] + v[51]; + y[89] = -0.000199851859397042 * v[52] + 7.63204966605162e-05 * v[53] + + 0.0231310887109696 * v[54] + v[55]; + y[90] = -0.000199851859397042 * v[46] + 7.63204966605162e-05 * v[43] + + 0.0231310887109696 * v[49] + v[48]; + y[92] = + 0.0444889418603304 * v[47] + 0.00804466059900797 * v[31] + 0.0746938738375369 * v[50] + v[51]; + y[93] = + 0.0444889418603304 * v[52] + 0.00804466059900797 * v[53] + 0.0746938738375369 * v[54] + v[55]; + y[94] = + 0.0444889418603304 * v[46] + 0.00804466059900797 * v[43] + 0.0746938738375369 * v[49] + v[48]; + y[96] = + 0.0143949418603304 * v[47] + -0.015607339400992 * v[31] + 0.0342678738375368 * v[50] + v[51]; + y[97] = + 0.0143949418603304 * v[52] + -0.015607339400992 * v[53] + 0.0342678738375368 * v[54] + v[55]; + y[98] = + 0.0143949418603304 * v[46] + -0.015607339400992 * v[43] + 0.0342678738375368 * v[49] + v[48]; + y[100] = 0.0450229418603304 * v[47] + -0.00814133940099203 * v[31] + 0.0747888738375369 * v[50] + + v[51]; + y[101] = 0.0450229418603304 * v[52] + -0.00814133940099203 * v[53] + 0.0747888738375369 * v[54] + + v[55]; + y[102] = 0.0450229418603304 * v[46] + -0.00814133940099203 * v[43] + 0.0747888738375369 * v[49] + + v[48]; + y[104] = + 0.0349399418603304 * v[47] + 0.00851466059900797 * v[31] + 0.0614948738375369 * v[50] + v[51]; + y[105] = + 0.0349399418603304 * v[52] + 0.00851466059900797 * v[53] + 0.0614948738375369 * v[54] + v[55]; + y[106] = + 0.0349399418603304 * v[46] + 0.00851466059900797 * v[43] + 0.0614948738375369 * v[49] + v[48]; + y[108] = + 0.0155629418603304 * v[47] + 0.015429660599008 * v[31] + 0.0357898738375369 * v[50] + v[51]; + y[109] = + 0.0155629418603304 * v[52] + 0.015429660599008 * v[53] + 0.0357898738375369 * v[54] + v[55]; + y[110] = + 0.0155629418603304 * v[46] + 0.015429660599008 * v[43] + 0.0357898738375369 * v[49] + v[48]; + y[112] = + 0.0231689418603304 * v[47] + -0.014684339400992 * v[31] + 0.0463518738375369 * v[50] + v[51]; + y[113] = + 0.0231689418603304 * v[52] + -0.014684339400992 * v[53] + 0.0463518738375369 * v[54] + v[55]; + y[114] = + 0.0231689418603304 * v[46] + -0.014684339400992 * v[43] + 0.0463518738375369 * v[49] + v[48]; + y[116] = + 0.0331909418603304 * v[47] + -0.011181339400992 * v[31] + 0.0599398738375369 * v[50] + v[51]; + y[117] = + 0.0331909418603304 * v[52] + -0.011181339400992 * v[53] + 0.0599398738375369 * v[54] + v[55]; + y[118] = + 0.0331909418603304 * v[46] + -0.011181339400992 * v[43] + 0.0599398738375369 * v[49] + v[48]; + y[120] = + 0.0263189418603304 * v[47] + 0.013959660599008 * v[31] + 0.0511568738375369 * v[50] + v[51]; + y[121] = + 0.0263189418603304 * v[52] + 0.013959660599008 * v[53] + 0.0511568738375369 * v[54] + v[55]; + y[122] = + 0.0263189418603304 * v[46] + 0.013959660599008 * v[43] + 0.0511568738375369 * v[49] + v[48]; + y[124] = 0.0623787980982067 * v[47] + -0.000234199006115228 * v[31] + 0.0721059691962172 * v[50] + + v[51]; + y[125] = 0.0623787980982067 * v[52] + -0.000234199006115228 * v[53] + 0.0721059691962172 * v[54] + + v[55]; + y[126] = 0.0623787980982067 * v[46] + -0.000234199006115228 * v[43] + 0.0721059691962172 * v[49] + + v[48]; + y[128] = 0.0487957980982067 * v[47] + -4.01990061152315e-05 * v[31] + 0.0788669691962172 * v[50] + + v[51]; + y[129] = 0.0487957980982067 * v[52] + -4.01990061152315e-05 * v[53] + 0.0788669691962172 * v[54] + + v[55]; + y[130] = 0.0487957980982067 * v[46] + -4.01990061152315e-05 * v[43] + 0.0788669691962172 * v[49] + + v[48]; + y[132] = + 0.0445177980982067 * v[47] + 0.00426880099388477 * v[31] + 0.112418969196217 * v[50] + v[51]; + y[133] = + 0.0445177980982067 * v[52] + 0.00426880099388477 * v[53] + 0.112418969196217 * v[54] + v[55]; + y[134] = + 0.0445177980982067 * v[46] + 0.00426880099388477 * v[43] + 0.112418969196217 * v[49] + v[48]; + y[136] = + 0.0445317980982067 * v[47] + -0.00397219900611523 * v[31] + 0.113735969196217 * v[50] + v[51]; + y[137] = + 0.0445317980982067 * v[52] + -0.00397219900611523 * v[53] + 0.113735969196217 * v[54] + v[55]; + y[138] = + 0.0445317980982067 * v[46] + -0.00397219900611523 * v[43] + 0.113735969196217 * v[49] + v[48]; + y[140] = + 0.0461197980982067 * v[47] + 0.000114800993884768 * v[31] + 0.103681969196217 * v[50] + v[51]; + y[141] = + 0.0461197980982067 * v[52] + 0.000114800993884768 * v[53] + 0.103681969196217 * v[54] + v[55]; + y[142] = + 0.0461197980982067 * v[46] + 0.000114800993884768 * v[43] + 0.103681969196217 * v[49] + v[48]; + y[144] = 0.0460907980982067 * v[47] + -0.00245419900611523 * v[31] + 0.0926159691962172 * v[50] + + v[51]; + y[145] = 0.0460907980982067 * v[52] + -0.00245419900611523 * v[53] + 0.0926159691962172 * v[54] + + v[55]; + y[146] = 0.0460907980982067 * v[46] + -0.00245419900611523 * v[43] + 0.0926159691962172 * v[49] + + v[48]; + y[148] = + 0.0441217980982067 * v[47] + 0.00562580099388477 * v[31] + 0.0930719691962172 * v[50] + v[51]; + y[149] = + 0.0441217980982067 * v[52] + 0.00562580099388477 * v[53] + 0.0930719691962172 * v[54] + v[55]; + y[150] = + 0.0441217980982067 * v[46] + 0.00562580099388477 * v[43] + 0.0930719691962172 * v[49] + v[48]; + y[152] = 0.0552620541990758 * v[47] + 1.22706409919795e-17 * v[31] + 0.0331275379870581 * v[50] + + v[51]; + y[153] = 0.0552620541990758 * v[52] + 1.22706409919795e-17 * v[53] + 0.0331275379870581 * v[54] + + v[55]; + y[154] = 0.0552620541990758 * v[46] + 1.22706409919795e-17 * v[43] + 0.0331275379870581 * v[49] + + v[48]; + y[156] = 0.0311880541990758 * v[47] + 6.92513917301426e-18 * v[31] + 0.0254065379870581 * v[50] + + v[51]; + y[157] = 0.0311880541990758 * v[52] + 6.92513917301426e-18 * v[53] + 0.0254065379870581 * v[54] + + v[55]; + y[158] = 0.0311880541990758 * v[46] + 6.92513917301426e-18 * v[43] + 0.0254065379870581 * v[49] + + v[48]; + y[160] = 0.0585960541990758 * v[47] + 1.30109377047995e-17 * v[31] + 0.0278055379870581 * v[50] + + v[51]; + y[161] = 0.0585960541990758 * v[52] + 1.30109377047995e-17 * v[53] + 0.0278055379870581 * v[54] + + v[55]; + y[162] = 0.0585960541990758 * v[46] + 1.30109377047995e-17 * v[43] + 0.0278055379870581 * v[49] + + v[48]; + y[164] = 0.0453500541990758 * v[47] + 1.00697348679625e-17 * v[31] + 0.0262125379870581 * v[50] + + v[51]; + y[165] = 0.0453500541990758 * v[52] + 1.00697348679625e-17 * v[53] + 0.0262125379870581 * v[54] + + v[55]; + y[166] = 0.0453500541990758 * v[46] + 1.00697348679625e-17 * v[43] + 0.0262125379870581 * v[49] + + v[48]; + y[168] = 0.0635240541990758 * v[47] + 1.41051735178701e-17 * v[31] + 0.0330105379870581 * v[50] + + v[51]; + y[169] = 0.0635240541990758 * v[52] + 1.41051735178701e-17 * v[53] + 0.0330105379870581 * v[54] + + v[55]; + y[170] = 0.0635240541990758 * v[46] + 1.41051735178701e-17 * v[43] + 0.0330105379870581 * v[49] + + v[48]; + y[172] = + 0.0651264623038461 * v[47] + 0.00851800000000001 * v[31] + 0.070495068913942 * v[50] + v[51]; + y[173] = + 0.0651264623038461 * v[52] + 0.00851800000000001 * v[53] + 0.070495068913942 * v[54] + v[55]; + y[174] = + 0.0651264623038461 * v[46] + 0.00851800000000001 * v[43] + 0.070495068913942 * v[49] + v[48]; + y[176] = + 0.0643414623038461 * v[47] + 0.00624200000000001 * v[31] + 0.055076068913942 * v[50] + v[51]; + y[177] = + 0.0643414623038461 * v[52] + 0.00624200000000001 * v[53] + 0.055076068913942 * v[54] + v[55]; + y[178] = + 0.0643414623038461 * v[46] + 0.00624200000000001 * v[43] + 0.055076068913942 * v[49] + v[48]; + y[180] = + 0.0649744623038461 * v[47] + -0.00847699999999999 * v[31] + 0.069285068913942 * v[50] + v[51]; + y[181] = + 0.0649744623038461 * v[52] + -0.00847699999999999 * v[53] + 0.069285068913942 * v[54] + v[55]; + y[182] = + 0.0649744623038461 * v[46] + -0.00847699999999999 * v[43] + 0.069285068913942 * v[49] + v[48]; + y[184] = + 0.0643704623038461 * v[47] + -0.00630099999999999 * v[31] + 0.054502068913942 * v[50] + v[51]; + y[185] = + 0.0643704623038461 * v[52] + -0.00630099999999999 * v[53] + 0.054502068913942 * v[54] + v[55]; + y[186] = + 0.0643704623038461 * v[46] + -0.00630099999999999 * v[43] + 0.054502068913942 * v[49] + v[48]; + y[188] = + 0.0633094623038461 * v[47] + -0.00602399999999999 * v[31] + 0.040743068913942 * v[50] + v[51]; + y[189] = + 0.0633094623038461 * v[52] + -0.00602399999999999 * v[53] + 0.040743068913942 * v[54] + v[55]; + y[190] = + 0.0633094623038461 * v[46] + -0.00602399999999999 * v[43] + 0.040743068913942 * v[49] + v[48]; + y[192] = + 0.0631514623038461 * v[47] + 0.00523600000000001 * v[31] + 0.037942068913942 * v[50] + v[51]; + y[193] = + 0.0631514623038461 * v[52] + 0.00523600000000001 * v[53] + 0.037942068913942 * v[54] + v[55]; + y[194] = + 0.0631514623038461 * v[46] + 0.00523600000000001 * v[43] + 0.037942068913942 * v[49] + v[48]; + y[196] = + 0.0622994623038461 * v[47] + 0.00742700000000001 * v[31] + 0.024559068913942 * v[50] + v[51]; + y[197] = + 0.0622994623038461 * v[52] + 0.00742700000000001 * v[53] + 0.024559068913942 * v[54] + v[55]; + y[198] = + 0.0622994623038461 * v[46] + 0.00742700000000001 * v[43] + 0.024559068913942 * v[49] + v[48]; + y[200] = + 0.0625164623038461 * v[47] + -0.00732999999999999 * v[31] + 0.027526068913942 * v[50] + v[51]; + y[201] = + 0.0625164623038461 * v[52] + -0.00732999999999999 * v[53] + 0.027526068913942 * v[54] + v[55]; + y[202] = + 0.0625164623038461 * v[46] + -0.00732999999999999 * v[43] + 0.027526068913942 * v[49] + v[48]; + y[204] = -0.0444889418600303 * v[47] + -0.00804466059900787 * v[31] + 0.074693873837609 * v[50] + + v[51]; + y[205] = -0.0444889418600303 * v[52] + -0.00804466059900787 * v[53] + 0.074693873837609 * v[54] + + v[55]; + y[206] = -0.0444889418600303 * v[46] + -0.00804466059900787 * v[43] + 0.074693873837609 * v[49] + + v[48]; + y[208] = + -0.0143949418600302 * v[47] + 0.015607339400992 * v[31] + 0.0342678738376091 * v[50] + v[51]; + y[209] = + -0.0143949418600302 * v[52] + 0.015607339400992 * v[53] + 0.0342678738376091 * v[54] + v[55]; + y[210] = + -0.0143949418600302 * v[46] + 0.015607339400992 * v[43] + 0.0342678738376091 * v[49] + v[48]; + y[212] = + -0.0450229418600302 * v[47] + 0.00814133940099214 * v[31] + 0.074788873837609 * v[50] + v[51]; + y[213] = + -0.0450229418600302 * v[52] + 0.00814133940099214 * v[53] + 0.074788873837609 * v[54] + v[55]; + y[214] = + -0.0450229418600302 * v[46] + 0.00814133940099214 * v[43] + 0.074788873837609 * v[49] + v[48]; + y[216] = -0.0349399418600303 * v[47] + -0.00851466059900789 * v[31] + 0.0614948738376091 * v[50] + + v[51]; + y[217] = -0.0349399418600303 * v[52] + -0.00851466059900789 * v[53] + 0.0614948738376091 * v[54] + + v[55]; + y[218] = -0.0349399418600303 * v[46] + -0.00851466059900789 * v[43] + 0.0614948738376091 * v[49] + + v[48]; + y[220] = + -0.0155629418600303 * v[47] + -0.015429660599008 * v[31] + 0.0357898738376091 * v[50] + v[51]; + y[221] = + -0.0155629418600303 * v[52] + -0.015429660599008 * v[53] + 0.0357898738376091 * v[54] + v[55]; + y[222] = + -0.0155629418600303 * v[46] + -0.015429660599008 * v[43] + 0.0357898738376091 * v[49] + v[48]; + y[224] = + -0.0231689418600302 * v[47] + 0.0146843394009921 * v[31] + 0.0463518738376091 * v[50] + v[51]; + y[225] = + -0.0231689418600302 * v[52] + 0.0146843394009921 * v[53] + 0.0463518738376091 * v[54] + v[55]; + y[226] = + -0.0231689418600302 * v[46] + 0.0146843394009921 * v[43] + 0.0463518738376091 * v[49] + v[48]; + y[228] = + -0.0331909418600302 * v[47] + 0.0111813394009921 * v[31] + 0.0599398738376091 * v[50] + v[51]; + y[229] = + -0.0331909418600302 * v[52] + 0.0111813394009921 * v[53] + 0.0599398738376091 * v[54] + v[55]; + y[230] = + -0.0331909418600302 * v[46] + 0.0111813394009921 * v[43] + 0.0599398738376091 * v[49] + v[48]; + y[232] = -0.0263189418600303 * v[47] + -0.0139596605990079 * v[31] + 0.0511568738376091 * v[50] + + v[51]; + y[233] = -0.0263189418600303 * v[52] + -0.0139596605990079 * v[53] + 0.0511568738376091 * v[54] + + v[55]; + y[234] = -0.0263189418600303 * v[46] + -0.0139596605990079 * v[43] + 0.0511568738376091 * v[49] + + v[48]; + y[236] = -0.0618995347823531 * v[47] + 0.000234199006115388 * v[31] + 0.0724663376686607 * v[50] + + v[51]; + y[237] = -0.0618995347823531 * v[52] + 0.000234199006115388 * v[53] + 0.0724663376686607 * v[54] + + v[55]; + y[238] = -0.0618995347823531 * v[46] + 0.000234199006115388 * v[43] + 0.0724663376686607 * v[49] + + v[48]; + y[240] = -0.0483165347823531 * v[47] + 4.01990061153467e-05 * v[31] + 0.0792273376686607 * v[50] + + v[51]; + y[241] = -0.0483165347823531 * v[52] + 4.01990061153467e-05 * v[53] + 0.0792273376686607 * v[54] + + v[55]; + y[242] = -0.0483165347823531 * v[46] + 4.01990061153467e-05 * v[43] + 0.0792273376686607 * v[49] + + v[48]; + y[244] = -0.0440385347823531 * v[47] + -0.00426880099388467 * v[31] + 0.112779337668661 * v[50] + + v[51]; + y[245] = -0.0440385347823531 * v[52] + -0.00426880099388467 * v[53] + 0.112779337668661 * v[54] + + v[55]; + y[246] = -0.0440385347823531 * v[46] + -0.00426880099388467 * v[43] + 0.112779337668661 * v[49] + + v[48]; + y[248] = + -0.0440525347823531 * v[47] + 0.00397219900611533 * v[31] + 0.114096337668661 * v[50] + v[51]; + y[249] = + -0.0440525347823531 * v[52] + 0.00397219900611533 * v[53] + 0.114096337668661 * v[54] + v[55]; + y[250] = + -0.0440525347823531 * v[46] + 0.00397219900611533 * v[43] + 0.114096337668661 * v[49] + v[48]; + y[252] = -0.0456405347823531 * v[47] + -0.000114800993884661 * v[31] + 0.104042337668661 * v[50] + + v[51]; + y[253] = -0.0456405347823531 * v[52] + -0.000114800993884661 * v[53] + 0.104042337668661 * v[54] + + v[55]; + y[254] = -0.0456405347823531 * v[46] + -0.000114800993884661 * v[43] + 0.104042337668661 * v[49] + + v[48]; + y[256] = -0.0456115347823531 * v[47] + 0.00245419900611534 * v[31] + 0.0929763376686607 * v[50] + + v[51]; + y[257] = -0.0456115347823531 * v[52] + 0.00245419900611534 * v[53] + 0.0929763376686607 * v[54] + + v[55]; + y[258] = -0.0456115347823531 * v[46] + 0.00245419900611534 * v[43] + 0.0929763376686607 * v[49] + + v[48]; + y[260] = -0.0436425347823531 * v[47] + -0.00562580099388467 * v[31] + 0.0934323376686607 * v[50] + + v[51]; + y[261] = -0.0436425347823531 * v[52] + -0.00562580099388467 * v[53] + 0.0934323376686607 * v[54] + + v[55]; + y[262] = -0.0436425347823531 * v[46] + -0.00562580099388467 * v[43] + 0.0934323376686607 * v[49] + + v[48]; + y[264] = -0.0552620541989112 * v[47] + 6.74109569768114e-17 * v[31] + 0.0331275379870581 * v[50] + + v[51]; + y[265] = -0.0552620541989112 * v[52] + 6.74109569768114e-17 * v[53] + 0.0331275379870581 * v[54] + + v[55]; + y[266] = -0.0552620541989112 * v[46] + 6.74109569768114e-17 * v[43] + 0.0331275379870581 * v[49] + + v[48]; + y[268] = -0.0311880541989112 * v[47] + -5.02878137400361e-18 * v[31] + + 0.0254065379870581 * v[50] + v[51]; + y[269] = -0.0311880541989112 * v[52] + -5.02878137400361e-18 * v[53] + + 0.0254065379870581 * v[54] + v[55]; + y[270] = -0.0311880541989112 * v[46] + -5.02878137400361e-18 * v[43] + + 0.0254065379870581 * v[49] + v[48]; + y[272] = -0.0585960541989112 * v[47] + 7.74431114863078e-17 * v[31] + 0.0278055379870581 * v[50] + + v[51]; + y[273] = -0.0585960541989112 * v[52] + 7.74431114863078e-17 * v[53] + 0.0278055379870581 * v[54] + + v[55]; + y[274] = -0.0585960541989112 * v[46] + 7.74431114863078e-17 * v[43] + 0.0278055379870581 * v[49] + + v[48]; + y[276] = -0.0453500541989112 * v[47] + 3.75853074572767e-17 * v[31] + 0.0262125379870581 * v[50] + + v[51]; + y[277] = -0.0453500541989112 * v[52] + 3.75853074572767e-17 * v[53] + 0.0262125379870581 * v[54] + + v[55]; + y[278] = -0.0453500541989112 * v[46] + 3.75853074572767e-17 * v[43] + 0.0262125379870581 * v[49] + + v[48]; + y[280] = -0.0635240541989112 * v[47] + 9.22716829988448e-17 * v[31] + 0.0330105379870581 * v[50] + + v[51]; + y[281] = -0.0635240541989112 * v[52] + 9.22716829988448e-17 * v[53] + 0.0330105379870581 * v[54] + + v[55]; + y[282] = -0.0635240541989112 * v[46] + 9.22716829988448e-17 * v[43] + 0.0330105379870581 * v[49] + + v[48]; + y[284] = -0.0651450090137519 * v[47] + -0.0085179999999999 * v[31] + 0.0708276761757193 * v[50] + + v[51]; + y[285] = -0.0651450090137519 * v[52] + -0.0085179999999999 * v[53] + 0.0708276761757193 * v[54] + + v[55]; + y[286] = -0.0651450090137519 * v[46] + -0.0085179999999999 * v[43] + 0.0708276761757193 * v[49] + + v[48]; + y[288] = -0.0643600090137519 * v[47] + -0.00624199999999991 * v[31] + 0.0554086761757193 * v[50] + + v[51]; + y[289] = -0.0643600090137519 * v[52] + -0.00624199999999991 * v[53] + 0.0554086761757193 * v[54] + + v[55]; + y[290] = -0.0643600090137519 * v[46] + -0.00624199999999991 * v[43] + 0.0554086761757193 * v[49] + + v[48]; + y[292] = + -0.0649930090137518 * v[47] + 0.0084770000000001 * v[31] + 0.0696176761757193 * v[50] + v[51]; + y[293] = + -0.0649930090137518 * v[52] + 0.0084770000000001 * v[53] + 0.0696176761757193 * v[54] + v[55]; + y[294] = + -0.0649930090137518 * v[46] + 0.0084770000000001 * v[43] + 0.0696176761757193 * v[49] + v[48]; + y[296] = -0.0643890090137518 * v[47] + 0.00630100000000009 * v[31] + 0.0548346761757193 * v[50] + + v[51]; + y[297] = -0.0643890090137518 * v[52] + 0.00630100000000009 * v[53] + 0.0548346761757193 * v[54] + + v[55]; + y[298] = -0.0643890090137518 * v[46] + 0.00630100000000009 * v[43] + 0.0548346761757193 * v[49] + + v[48]; + y[300] = -0.0633280090137518 * v[47] + 0.00602400000000009 * v[31] + 0.0410756761757193 * v[50] + + v[51]; + y[301] = -0.0633280090137518 * v[52] + 0.00602400000000009 * v[53] + 0.0410756761757193 * v[54] + + v[55]; + y[302] = -0.0633280090137518 * v[46] + 0.00602400000000009 * v[43] + 0.0410756761757193 * v[49] + + v[48]; + y[304] = -0.0631700090137519 * v[47] + -0.00523599999999991 * v[31] + 0.0382746761757193 * v[50] + + v[51]; + y[305] = -0.0631700090137519 * v[52] + -0.00523599999999991 * v[53] + 0.0382746761757193 * v[54] + + v[55]; + y[306] = -0.0631700090137519 * v[46] + -0.00523599999999991 * v[43] + 0.0382746761757193 * v[49] + + v[48]; + y[308] = -0.0623180090137519 * v[47] + -0.00742699999999991 * v[31] + 0.0248916761757193 * v[50] + + v[51]; + y[309] = -0.0623180090137519 * v[52] + -0.00742699999999991 * v[53] + 0.0248916761757193 * v[54] + + v[55]; + y[310] = -0.0623180090137519 * v[46] + -0.00742699999999991 * v[43] + 0.0248916761757193 * v[49] + + v[48]; + y[312] = -0.0625350090137518 * v[47] + 0.00733000000000009 * v[31] + 0.0278586761757193 * v[50] + + v[51]; + y[313] = -0.0625350090137518 * v[52] + 0.00733000000000009 * v[53] + 0.0278586761757193 * v[54] + + v[55]; + y[314] = -0.0625350090137518 * v[46] + 0.00733000000000009 * v[43] + 0.0278586761757193 * v[49] + + v[48]; + y[320] = -0.000288299517706037 * v[2] + -0.00873530749231577 * v[4]; + y[321] = -0.000288299517706037 * v[1] + -0.00873530749231577 * v[3]; + y[324] = -0.303314477205276 * v[7] + 3.42804924002849e-06 * v[10] + 0.168922066688538 * v[11]; + y[325] = -0.303314477205276 * v[6] + 3.42804924002849e-06 * v[9] + 0.168922066688538 * v[8]; + y[326] = 0.1807 + -0.303314477205276 * v[5] + -3.46465053732079e-11 + 3.42804924002849e-06 * v[0]; + y[328] = -0.284153372049332 * v[14] + 0.000178343747393228 * v[16] + 0.0534070208668709 * v[11] + + v[17]; + y[329] = + -0.284153372049332 * v[18] + 0.000178343747393228 * v[19] + 0.0534070208668709 * v[8] + v[20]; + y[330] = + -0.284153372049332 * v[13] + -1.09539663568219e-11 + 0.000178343747393228 * v[15] + v[12]; + y[332] = -3.24659049510956e-06 * v[23] + -0.00883310846984386 * v[25] + + -0.0100402645766735 * v[11] + v[26]; + y[333] = -3.24659049510956e-06 * v[27] + -0.00883310846984386 * v[28] + + -0.0100402645766735 * v[8] + v[29]; + y[334] = + -3.24659049510956e-06 * v[22] + 2.05929330266566e-12 + -0.00883310846984386 * v[24] + v[21]; + y[336] = -0.000313147320412099 * v[33] + 0.00790893100202084 * v[36] + + -0.00259667658247054 * v[37] + v[38]; + y[337] = -0.000313147320412099 * v[39] + 0.00790893100202084 * v[40] + + -0.00259667658247054 * v[41] + v[42]; + y[338] = -0.000313147320412099 * v[32] + 0.00790893100202084 * v[35] + + -0.00259667658247054 * v[34] + v[30]; + y[340] = -0.000175642926478758 * v[47] + -0.000741446681786329 * v[31] + + -0.0244805328547955 * v[50] + v[51]; + y[341] = -0.000175642926478758 * v[52] + -0.000741446681786329 * v[53] + + -0.0244805328547955 * v[54] + v[55]; + y[342] = -0.000175642926478758 * v[46] + -0.000741446681786329 * v[43] + + -0.0244805328547955 * v[49] + v[48]; + y[344] = 0.000641186255961657 * v[47] + 0.000305214809486642 * v[31] + + 0.00517970696091652 * v[50] + v[51]; + y[345] = 0.000641186255961657 * v[52] + 0.000305214809486642 * v[53] + + 0.00517970696091652 * v[54] + v[55]; + y[346] = 0.000641186255961657 * v[46] + 0.000305214809486642 * v[43] + + 0.00517970696091652 * v[49] + v[48]; + y[348] = 0.0288996081799269 * v[47] + -8.60016298247501e-05 * v[31] + 0.053745910525322 * v[50] + + v[51]; + y[349] = 0.0288996081799269 * v[52] + -8.60016298247501e-05 * v[53] + 0.053745910525322 * v[54] + + v[55]; + y[350] = 0.0288996081799269 * v[46] + -8.60016298247501e-05 * v[43] + 0.053745910525322 * v[49] + + v[48]; + y[352] = 0.0535754598677158 * v[47] + -0.000619045924395323 * v[31] + 0.0924018174409866 * v[50] + + v[51]; + y[353] = 0.0535754598677158 * v[52] + -0.000619045924395323 * v[53] + 0.0924018174409866 * v[54] + + v[55]; + y[354] = 0.0535754598677158 * v[46] + -0.000619045924395323 * v[43] + 0.0924018174409866 * v[49] + + v[48]; + y[356] = + 0.046760305762291 * v[47] + 1.03828736191616e-17 * v[31] + 0.0290684439241886 * v[50] + v[51]; + y[357] = + 0.046760305762291 * v[52] + 1.03828736191616e-17 * v[53] + 0.0290684439241886 * v[54] + v[55]; + y[358] = + 0.046760305762291 * v[46] + 1.03828736191616e-17 * v[43] + 0.0290684439241886 * v[49] + v[48]; + y[360] = + 0.0636855289340019 * v[47] + 0.00144436443224549 * v[31] + 0.0475660935044289 * v[50] + v[51]; + y[361] = + 0.0636855289340019 * v[52] + 0.00144436443224549 * v[53] + 0.0475660935044289 * v[54] + v[55]; + y[362] = + 0.0636855289340019 * v[46] + 0.00144436443224549 * v[43] + 0.0475660935044289 * v[49] + v[48]; + y[364] = -0.0288996081799269 * v[47] + 8.60016298247501e-05 * v[31] + 0.053745910525322 * v[50] + + v[51]; + y[365] = -0.0288996081799269 * v[52] + 8.60016298247501e-05 * v[53] + 0.053745910525322 * v[54] + + v[55]; + y[366] = -0.0288996081799269 * v[46] + 8.60016298247501e-05 * v[43] + 0.053745910525322 * v[49] + + v[48]; + y[368] = -0.0530961975455284 * v[47] + 0.000619045924395323 * v[31] + 0.0927621871232986 * v[50] + + v[51]; + y[369] = -0.0530961975455284 * v[52] + 0.000619045924395323 * v[53] + 0.0927621871232986 * v[54] + + v[55]; + y[370] = -0.0530961975455284 * v[46] + 0.000619045924395323 * v[43] + 0.0927621871232986 * v[49] + + v[48]; + y[372] = -0.046760305762291 * v[47] + 4.18288129672998e-17 * v[31] + 0.0290684439241886 * v[50] + + v[51]; + y[373] = -0.046760305762291 * v[52] + 4.18288129672998e-17 * v[53] + 0.0290684439241886 * v[54] + + v[55]; + y[374] = -0.046760305762291 * v[46] + 4.18288129672998e-17 * v[43] + 0.0290684439241886 * v[49] + + v[48]; + y[376] = -0.0637040734291077 * v[47] + -0.00144436443224549 * v[31] + 0.0478986985981464 * v[50] + + v[51]; + y[377] = -0.0637040734291077 * v[52] + -0.00144436443224549 * v[53] + 0.0478986985981464 * v[54] + + v[55]; + y[378] = -0.0637040734291077 * v[46] + -0.00144436443224549 * v[43] + 0.0478986985981464 * v[49] + + v[48]; + // dependent variables without operations + y[0] = -6.44109725952151e-07; + y[1] = -1.16391277313232e-05; + y[2] = 0.0496443499687567; + y[3] = 0.107271999120712; + y[6] = 0.179449425041044; + y[7] = 0.122019000351429; + y[11] = 0.100000001490116; + y[15] = 0.100000001490116; + y[19] = 0.100000001490116; + y[23] = 0.100000001490116; + y[27] = 0.100000001490116; + y[31] = 0.100000001490116; + y[35] = 0.100000001490116; + y[39] = 0.100000001490116; + y[43] = 0.0770189985632896; + y[47] = 0.0817079991102219; + y[51] = 0.0797109976410866; + y[55] = 0.0832929983735085; + y[59] = 0.0817840024828911; + y[63] = 0.0878330022096634; + y[67] = 0.0887719988822937; + y[71] = 0.0726329982280731; + y[75] = 0.079586997628212; + y[79] = 0.0813139975070953; + y[83] = 0.0526160001754761; + y[87] = 0.0545889995992184; + y[91] = 0.045889999717474; + y[95] = 0.012109000235796; + y[99] = 0.0106359999626875; + y[103] = 0.0114740002900362; + y[107] = 0.0123990001156926; + y[111] = 0.0122360000386834; + y[115] = 0.0108470004051924; + y[119] = 0.0130009995773435; + y[123] = 0.0118150003254414; + y[127] = 0.012601999565959; + y[131] = 0.0133750000968575; + y[135] = 0.0122199999168515; + y[139] = 0.011315000243485; + y[143] = 0.0134969996288419; + y[147] = 0.0131989996880293; + y[151] = 0.0117070004343987; + y[155] = 0.012431999668479; + y[159] = 0.00987400021404028; + y[163] = 0.0122570004314184; + y[167] = 0.00966900028288364; + y[171] = 0.00865000020712614; + y[175] = 0.00920400023460388; + y[179] = 0.0123479999601841; + y[183] = 0.00932999979704618; + y[187] = 0.0117380004376173; + y[191] = 0.00990500021725893; + y[195] = 0.0116910003125668; + y[199] = 0.00942999962717295; + y[203] = 0.0107370000332594; + y[207] = 0.012109000235796; + y[211] = 0.0106359999626875; + y[215] = 0.0114740002900362; + y[219] = 0.0123990001156926; + y[223] = 0.0122360000386834; + y[227] = 0.0108470004051924; + y[231] = 0.0130009995773435; + y[235] = 0.0118150003254414; + y[239] = 0.012601999565959; + y[243] = 0.0133750000968575; + y[247] = 0.0122199999168515; + y[251] = 0.011315000243485; + y[255] = 0.0134969996288419; + y[259] = 0.0131989996880293; + y[263] = 0.0117070004343987; + y[267] = 0.012431999668479; + y[271] = 0.00987400021404028; + y[275] = 0.0122570004314184; + y[279] = 0.00966900028288364; + y[283] = 0.00865000020712614; + y[287] = 0.00920400023460388; + y[291] = 0.0123479999601841; + y[295] = 0.00932999979704618; + y[299] = 0.0117380004376173; + y[303] = 0.00990500021725893; + y[307] = 0.0116910003125668; + y[311] = 0.00942999962717295; + y[315] = 0.0107370000332594; + y[316] = -6.44109718450636e-07; + y[317] = -1.1639127478702e-05; + y[318] = 0.0496443510055542; + y[319] = 0.107271999120712; + y[322] = 0.179449425052665; + y[323] = 0.122019000351429; + y[327] = 0.403739362955093; + y[331] = 0.355899393558502; + y[335] = 0.079586997628212; + y[339] = 0.0813139975070953; + y[343] = 0.0526160001754761; + y[347] = 0.063862532377243; + y[351] = 0.0394577123224735; + y[355] = 0.0347281917929649; + y[359] = 0.0258710160851479; + y[363] = 0.0332425236701965; + y[367] = 0.0394577123224735; + y[371] = 0.0347281917929649; + y[375] = 0.0258710160851479; + y[379] = 0.0332425236701965; + + Debug output; + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[0], y[1], y[2], y[3])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[4], y[5], y[6], y[7])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[8], y[9], y[10], y[11])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[12], y[13], y[14], y[15])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[16], y[17], y[18], y[19])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[20], y[21], y[22], y[23])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[24], y[25], y[26], y[27])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[28], y[29], y[30], y[31])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[32], y[33], y[34], y[35])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[36], y[37], y[38], y[39])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[40], y[41], y[42], y[43])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[44], y[45], y[46], y[47])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[48], y[49], y[50], y[51])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[52], y[53], y[54], y[55])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[56], y[57], y[58], y[59])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[60], y[61], y[62], y[63])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[64], y[65], y[66], y[67])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[68], y[69], y[70], y[71])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[72], y[73], y[74], y[75])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[76], y[77], y[78], y[79])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[80], y[81], y[82], y[83])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[84], y[85], y[86], y[87])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[88], y[89], y[90], y[91])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[92], y[93], y[94], y[95])); + + output.first.emplace_back( + sphere_environment_get_collisions(environment, y[96], y[97], y[98], y[99])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[100], y[101], y[102], y[103])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[104], y[105], y[106], y[107])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[108], y[109], y[110], y[111])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[112], y[113], y[114], y[115])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[116], y[117], y[118], y[119])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[120], y[121], y[122], y[123])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[124], y[125], y[126], y[127])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[128], y[129], y[130], y[131])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[132], y[133], y[134], y[135])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[136], y[137], y[138], y[139])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[140], y[141], y[142], y[143])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[144], y[145], y[146], y[147])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[148], y[149], y[150], y[151])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[152], y[153], y[154], y[155])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[156], y[157], y[158], y[159])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[160], y[161], y[162], y[163])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[164], y[165], y[166], y[167])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[168], y[169], y[170], y[171])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[172], y[173], y[174], y[175])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[176], y[177], y[178], y[179])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[180], y[181], y[182], y[183])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[184], y[185], y[186], y[187])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[188], y[189], y[190], y[191])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[192], y[193], y[194], y[195])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[196], y[197], y[198], y[199])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[200], y[201], y[202], y[203])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[204], y[205], y[206], y[207])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[208], y[209], y[210], y[211])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[212], y[213], y[214], y[215])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[216], y[217], y[218], y[219])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[220], y[221], y[222], y[223])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[224], y[225], y[226], y[227])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[228], y[229], y[230], y[231])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[232], y[233], y[234], y[235])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[236], y[237], y[238], y[239])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[240], y[241], y[242], y[243])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[244], y[245], y[246], y[247])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[248], y[249], y[250], y[251])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[252], y[253], y[254], y[255])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[256], y[257], y[258], y[259])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[260], y[261], y[262], y[263])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[264], y[265], y[266], y[267])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[268], y[269], y[270], y[271])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[272], y[273], y[274], y[275])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[276], y[277], y[278], y[279])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[280], y[281], y[282], y[283])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[284], y[285], y[286], y[287])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[288], y[289], y[290], y[291])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[292], y[293], y[294], y[295])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[296], y[297], y[298], y[299])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[300], y[301], y[302], y[303])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[304], y[305], y[306], y[307])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[308], y[309], y[310], y[311])); + + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[312], y[313], y[314], y[315])); + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[8], y[9], y[10], y[11])) + { + output.second.emplace_back(0, 2); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[12], y[13], y[14], y[15])) + { + output.second.emplace_back(0, 3); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[16], y[17], y[18], y[19])) + { + output.second.emplace_back(0, 4); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[20], y[21], y[22], y[23])) + { + output.second.emplace_back(0, 5); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[24], y[25], y[26], y[27])) + { + output.second.emplace_back(0, 6); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[28], y[29], y[30], y[31])) + { + output.second.emplace_back(0, 7); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[32], y[33], y[34], y[35])) + { + output.second.emplace_back(0, 8); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[36], y[37], y[38], y[39])) + { + output.second.emplace_back(0, 9); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[40], y[41], y[42], y[43])) + { + output.second.emplace_back(0, 10); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[44], y[45], y[46], y[47])) + { + output.second.emplace_back(0, 11); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[48], y[49], y[50], y[51])) + { + output.second.emplace_back(0, 12); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[52], y[53], y[54], y[55])) + { + output.second.emplace_back(0, 13); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(0, 14); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(0, 15); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(0, 16); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(0, 17); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(0, 18); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(0, 19); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(0, 20); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(0, 21); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(0, 22); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(0, 23); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(0, 24); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(0, 25); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(0, 26); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(0, 27); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(0, 28); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(0, 29); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(0, 30); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(0, 31); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(0, 32); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(0, 33); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(0, 34); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(0, 35); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(0, 36); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(0, 37); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(0, 38); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(0, 39); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(0, 40); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(0, 41); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(0, 42); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(0, 43); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(0, 44); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(0, 45); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(0, 46); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(0, 47); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(0, 48); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(0, 49); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(0, 50); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(0, 51); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(0, 52); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(0, 53); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(0, 54); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(0, 55); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(0, 56); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(0, 57); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(0, 58); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(0, 59); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(0, 60); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(0, 61); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(0, 62); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(0, 63); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(0, 64); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(0, 65); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(0, 66); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(0, 67); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(0, 68); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(0, 69); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(0, 70); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(0, 71); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(0, 72); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(0, 73); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(0, 74); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(0, 75); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(0, 76); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(0, 77); + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(0, 78); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[40], y[41], y[42], y[43])) + { + output.second.emplace_back(1, 10); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[44], y[45], y[46], y[47])) + { + output.second.emplace_back(1, 11); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[48], y[49], y[50], y[51])) + { + output.second.emplace_back(1, 12); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[52], y[53], y[54], y[55])) + { + output.second.emplace_back(1, 13); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[56], y[57], y[58], y[59])) + { + output.second.emplace_back(1, 14); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[60], y[61], y[62], y[63])) + { + output.second.emplace_back(1, 15); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[64], y[65], y[66], y[67])) + { + output.second.emplace_back(1, 16); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + output.second.emplace_back(1, 17); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(1, 18); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(1, 19); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(1, 20); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(1, 21); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(1, 22); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(1, 23); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(1, 24); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(1, 25); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(1, 26); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(1, 27); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(1, 28); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(1, 29); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(1, 30); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(1, 31); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(1, 32); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(1, 33); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(1, 34); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(1, 35); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(1, 36); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(1, 37); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(1, 38); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(1, 39); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(1, 40); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(1, 41); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(1, 42); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(1, 43); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(1, 44); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(1, 45); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(1, 46); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(1, 47); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(1, 48); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(1, 49); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(1, 50); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(1, 51); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(1, 52); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(1, 53); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(1, 54); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(1, 55); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(1, 56); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(1, 57); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(1, 58); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(1, 59); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(1, 60); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(1, 61); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(1, 62); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(1, 63); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(1, 64); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(1, 65); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(1, 66); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(1, 67); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(1, 68); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(1, 69); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(1, 70); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(1, 71); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(1, 72); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(1, 73); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(1, 74); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(1, 75); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(1, 76); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(1, 77); + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(1, 78); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(2, 18); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(3, 18); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(4, 18); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(5, 18); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(6, 18); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(7, 18); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(8, 18); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[72], y[73], y[74], y[75])) + { + output.second.emplace_back(9, 18); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(2, 19); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(3, 19); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(4, 19); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(5, 19); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(6, 19); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(7, 19); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(8, 19); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(9, 19); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(2, 20); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(3, 20); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(4, 20); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(5, 20); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(6, 20); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(7, 20); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(8, 20); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(9, 20); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(2, 21); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(2, 22); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(3, 21); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(3, 22); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(4, 21); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(4, 22); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(5, 21); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(5, 22); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(6, 21); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(6, 22); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(7, 21); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(7, 22); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(8, 21); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(8, 22); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(9, 21); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(9, 22); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(2, 23); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(2, 24); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(2, 25); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(2, 26); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(2, 27); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(2, 28); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(2, 29); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(2, 30); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(3, 23); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(3, 24); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(3, 25); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(3, 26); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(3, 27); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(3, 28); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(3, 29); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(3, 30); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(4, 23); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(4, 24); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(4, 25); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(4, 26); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(4, 27); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(4, 28); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(4, 29); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(4, 30); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(5, 23); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(5, 24); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(5, 25); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(5, 26); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(5, 27); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(5, 28); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(5, 29); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(5, 30); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(6, 23); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(6, 24); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(6, 25); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(6, 26); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(6, 27); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(6, 28); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(6, 29); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(6, 30); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(7, 23); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(7, 24); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(7, 25); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(7, 26); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(7, 27); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(7, 28); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(7, 29); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(7, 30); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(8, 23); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(8, 24); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(8, 25); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(8, 26); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(8, 27); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(8, 28); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(8, 29); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(8, 30); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(9, 23); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(9, 24); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(9, 25); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(9, 26); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(9, 27); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(9, 28); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(9, 29); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(9, 30); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(2, 31); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(2, 32); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(2, 33); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(2, 34); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(2, 35); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(2, 36); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(2, 37); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(3, 31); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(3, 32); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(3, 33); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(3, 34); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(3, 35); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(3, 36); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(3, 37); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(4, 31); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(4, 32); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(4, 33); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(4, 34); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(4, 35); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(4, 36); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(4, 37); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(5, 31); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(5, 32); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(5, 33); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(5, 34); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(5, 35); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(5, 36); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(5, 37); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(6, 31); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(6, 32); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(6, 33); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(6, 34); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(6, 35); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(6, 36); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(6, 37); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(7, 31); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(7, 32); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(7, 33); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(7, 34); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(7, 35); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(7, 36); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(7, 37); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(8, 31); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(8, 32); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(8, 33); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(8, 34); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(8, 35); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(8, 36); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(8, 37); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(9, 31); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(9, 32); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(9, 33); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(9, 34); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(9, 35); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(9, 36); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(9, 37); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(2, 38); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(2, 39); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(2, 40); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(2, 41); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(2, 42); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(3, 38); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(3, 39); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(3, 40); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(3, 41); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(3, 42); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(4, 38); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(4, 39); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(4, 40); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(4, 41); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(4, 42); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(5, 38); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(5, 39); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(5, 40); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(5, 41); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(5, 42); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(6, 38); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(6, 39); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(6, 40); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(6, 41); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(6, 42); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(7, 38); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(7, 39); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(7, 40); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(7, 41); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(7, 42); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(8, 38); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(8, 39); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(8, 40); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(8, 41); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(8, 42); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(9, 38); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(9, 39); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(9, 40); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(9, 41); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(9, 42); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(2, 43); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(2, 44); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(2, 45); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(2, 46); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(2, 47); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(2, 48); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(2, 49); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(2, 50); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(3, 43); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(3, 44); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(3, 45); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(3, 46); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(3, 47); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(3, 48); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(3, 49); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(3, 50); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(4, 43); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(4, 44); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(4, 45); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(4, 46); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(4, 47); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(4, 48); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(4, 49); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(4, 50); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(5, 43); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(5, 44); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(5, 45); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(5, 46); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(5, 47); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(5, 48); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(5, 49); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(5, 50); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(6, 43); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(6, 44); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(6, 45); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(6, 46); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(6, 47); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(6, 48); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(6, 49); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(6, 50); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(7, 43); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(7, 44); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(7, 45); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(7, 46); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(7, 47); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(7, 48); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(7, 49); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(7, 50); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(8, 43); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(8, 44); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(8, 45); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(8, 46); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(8, 47); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(8, 48); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(8, 49); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(8, 50); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(9, 43); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(9, 44); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(9, 45); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(9, 46); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(9, 47); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(9, 48); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(9, 49); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(9, 50); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(2, 51); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(2, 52); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(2, 53); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(2, 54); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(2, 55); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(2, 56); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(2, 57); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(2, 58); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(3, 51); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(3, 52); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(3, 53); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(3, 54); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(3, 55); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(3, 56); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(3, 57); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(3, 58); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(4, 51); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(4, 52); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(4, 53); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(4, 54); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(4, 55); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(4, 56); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(4, 57); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(4, 58); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(5, 51); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(5, 52); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(5, 53); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(5, 54); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(5, 55); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(5, 56); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(5, 57); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(5, 58); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(6, 51); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(6, 52); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(6, 53); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(6, 54); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(6, 55); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(6, 56); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(6, 57); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(6, 58); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(7, 51); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(7, 52); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(7, 53); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(7, 54); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(7, 55); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(7, 56); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(7, 57); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(7, 58); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(8, 51); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(8, 52); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(8, 53); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(8, 54); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(8, 55); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(8, 56); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(8, 57); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(8, 58); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(9, 51); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(9, 52); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(9, 53); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(9, 54); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(9, 55); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(9, 56); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(9, 57); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(9, 58); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(2, 59); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(2, 60); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(2, 61); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(2, 62); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(2, 63); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(2, 64); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(2, 65); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(3, 59); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(3, 60); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(3, 61); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(3, 62); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(3, 63); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(3, 64); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(3, 65); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(4, 59); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(4, 60); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(4, 61); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(4, 62); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(4, 63); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(4, 64); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(4, 65); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(5, 59); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(5, 60); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(5, 61); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(5, 62); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(5, 63); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(5, 64); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(5, 65); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(6, 59); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(6, 60); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(6, 61); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(6, 62); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(6, 63); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(6, 64); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(6, 65); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(7, 59); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(7, 60); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(7, 61); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(7, 62); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(7, 63); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(7, 64); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(7, 65); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(8, 59); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(8, 60); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(8, 61); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(8, 62); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(8, 63); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(8, 64); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(8, 65); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(9, 59); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(9, 60); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(9, 61); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(9, 62); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(9, 63); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(9, 64); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(9, 65); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(2, 66); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(2, 67); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(2, 68); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(2, 69); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(2, 70); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(3, 66); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(3, 67); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(3, 68); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(3, 69); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(3, 70); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(4, 66); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(4, 67); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(4, 68); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(4, 69); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(4, 70); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(5, 66); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(5, 67); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(5, 68); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(5, 69); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(5, 70); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(6, 66); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(6, 67); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(6, 68); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(6, 69); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(6, 70); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(7, 66); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(7, 67); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(7, 68); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(7, 69); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(7, 70); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(8, 66); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(8, 67); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(8, 68); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(8, 69); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(8, 70); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(9, 66); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(9, 67); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(9, 68); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(9, 69); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(9, 70); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(2, 71); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(2, 72); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(2, 73); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(2, 74); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(2, 75); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(2, 76); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(2, 77); + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(2, 78); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(3, 71); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(3, 72); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(3, 73); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(3, 74); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(3, 75); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(3, 76); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(3, 77); + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(3, 78); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(4, 71); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(4, 72); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(4, 73); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(4, 74); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(4, 75); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(4, 76); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(4, 77); + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(4, 78); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(5, 71); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(5, 72); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(5, 73); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(5, 74); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(5, 75); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(5, 76); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(5, 77); + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(5, 78); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(6, 71); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(6, 72); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(6, 73); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(6, 74); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(6, 75); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(6, 76); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(6, 77); + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(6, 78); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(7, 71); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(7, 72); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(7, 73); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(7, 74); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(7, 75); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(7, 76); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(7, 77); + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(7, 78); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(8, 71); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(8, 72); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(8, 73); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(8, 74); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(8, 75); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(8, 76); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(8, 77); + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(8, 78); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(9, 71); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(9, 72); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(9, 73); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(9, 74); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(9, 75); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(9, 76); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(9, 77); + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(9, 78); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(10, 19); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(11, 19); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(12, 19); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(13, 19); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(14, 19); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(15, 19); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(16, 19); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[76], y[77], y[78], y[79])) + { + output.second.emplace_back(17, 19); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(10, 20); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(11, 20); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(12, 20); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(13, 20); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(14, 20); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(15, 20); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(16, 20); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[80], y[81], y[82], y[83])) + { + output.second.emplace_back(17, 20); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(10, 21); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(10, 22); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(11, 21); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(11, 22); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(12, 21); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(12, 22); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(13, 21); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(13, 22); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(14, 21); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(14, 22); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(15, 21); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(15, 22); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(16, 21); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(16, 22); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[84], y[85], y[86], y[87])) + { + output.second.emplace_back(17, 21); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[88], y[89], y[90], y[91])) + { + output.second.emplace_back(17, 22); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(10, 23); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(10, 24); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(10, 25); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(10, 26); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(10, 27); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(10, 28); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(10, 29); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(10, 30); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(11, 23); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(11, 24); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(11, 25); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(11, 26); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(11, 27); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(11, 28); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(11, 29); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(11, 30); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(12, 23); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(12, 24); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(12, 25); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(12, 26); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(12, 27); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(12, 28); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(12, 29); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(12, 30); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(13, 23); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(13, 24); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(13, 25); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(13, 26); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(13, 27); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(13, 28); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(13, 29); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(13, 30); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(14, 23); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(14, 24); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(14, 25); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(14, 26); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(14, 27); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(14, 28); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(14, 29); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(14, 30); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(15, 23); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(15, 24); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(15, 25); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(15, 26); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(15, 27); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(15, 28); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(15, 29); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(15, 30); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(16, 23); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(16, 24); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(16, 25); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(16, 26); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(16, 27); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(16, 28); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(16, 29); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(16, 30); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[92], y[93], y[94], y[95])) + { + output.second.emplace_back(17, 23); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[96], y[97], y[98], y[99])) + { + output.second.emplace_back(17, 24); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[100], y[101], y[102], y[103])) + { + output.second.emplace_back(17, 25); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[104], y[105], y[106], y[107])) + { + output.second.emplace_back(17, 26); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[108], y[109], y[110], y[111])) + { + output.second.emplace_back(17, 27); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[112], y[113], y[114], y[115])) + { + output.second.emplace_back(17, 28); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[116], y[117], y[118], y[119])) + { + output.second.emplace_back(17, 29); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[120], y[121], y[122], y[123])) + { + output.second.emplace_back(17, 30); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(10, 31); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(10, 32); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(10, 33); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(10, 34); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(10, 35); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(10, 36); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(10, 37); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(11, 31); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(11, 32); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(11, 33); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(11, 34); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(11, 35); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(11, 36); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(11, 37); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(12, 31); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(12, 32); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(12, 33); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(12, 34); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(12, 35); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(12, 36); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(12, 37); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(13, 31); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(13, 32); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(13, 33); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(13, 34); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(13, 35); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(13, 36); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(13, 37); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(14, 31); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(14, 32); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(14, 33); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(14, 34); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(14, 35); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(14, 36); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(14, 37); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(15, 31); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(15, 32); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(15, 33); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(15, 34); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(15, 35); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(15, 36); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(15, 37); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(16, 31); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(16, 32); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(16, 33); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(16, 34); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(16, 35); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(16, 36); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(16, 37); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[124], y[125], y[126], y[127])) + { + output.second.emplace_back(17, 31); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + output.second.emplace_back(17, 32); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + output.second.emplace_back(17, 33); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + output.second.emplace_back(17, 34); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + output.second.emplace_back(17, 35); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + output.second.emplace_back(17, 36); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + output.second.emplace_back(17, 37); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(10, 38); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(10, 39); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(10, 40); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(10, 41); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(10, 42); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(11, 38); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(11, 39); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(11, 40); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(11, 41); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(11, 42); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(12, 38); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(12, 39); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(12, 40); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(12, 41); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(12, 42); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(13, 38); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(13, 39); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(13, 40); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(13, 41); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(13, 42); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(14, 38); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(14, 39); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(14, 40); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(14, 41); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(14, 42); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(15, 38); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(15, 39); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(15, 40); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(15, 41); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(15, 42); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(16, 38); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(16, 39); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(16, 40); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(16, 41); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(16, 42); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + output.second.emplace_back(17, 38); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + output.second.emplace_back(17, 39); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + output.second.emplace_back(17, 40); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + output.second.emplace_back(17, 41); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + output.second.emplace_back(17, 42); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(10, 43); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(10, 44); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(10, 45); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(10, 46); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(10, 47); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(10, 48); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(10, 49); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(10, 50); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(11, 43); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(11, 44); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(11, 45); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(11, 46); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(11, 47); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(11, 48); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(11, 49); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(11, 50); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(12, 43); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(12, 44); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(12, 45); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(12, 46); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(12, 47); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(12, 48); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(12, 49); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(12, 50); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(13, 43); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(13, 44); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(13, 45); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(13, 46); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(13, 47); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(13, 48); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(13, 49); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(13, 50); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(14, 43); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(14, 44); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(14, 45); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(14, 46); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(14, 47); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(14, 48); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(14, 49); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(14, 50); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(15, 43); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(15, 44); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(15, 45); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(15, 46); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(15, 47); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(15, 48); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(15, 49); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(15, 50); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(16, 43); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(16, 44); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(16, 45); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(16, 46); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(16, 47); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(16, 48); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(16, 49); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(16, 50); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + output.second.emplace_back(17, 43); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + output.second.emplace_back(17, 44); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + output.second.emplace_back(17, 45); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + output.second.emplace_back(17, 46); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + output.second.emplace_back(17, 47); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + output.second.emplace_back(17, 48); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + output.second.emplace_back(17, 49); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + output.second.emplace_back(17, 50); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(10, 51); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(10, 52); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(10, 53); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(10, 54); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(10, 55); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(10, 56); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(10, 57); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(10, 58); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(11, 51); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(11, 52); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(11, 53); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(11, 54); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(11, 55); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(11, 56); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(11, 57); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(11, 58); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(12, 51); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(12, 52); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(12, 53); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(12, 54); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(12, 55); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(12, 56); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(12, 57); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(12, 58); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(13, 51); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(13, 52); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(13, 53); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(13, 54); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(13, 55); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(13, 56); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(13, 57); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(13, 58); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(14, 51); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(14, 52); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(14, 53); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(14, 54); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(14, 55); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(14, 56); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(14, 57); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(14, 58); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(15, 51); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(15, 52); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(15, 53); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(15, 54); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(15, 55); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(15, 56); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(15, 57); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(15, 58); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(16, 51); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(16, 52); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(16, 53); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(16, 54); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(16, 55); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(16, 56); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(16, 57); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(16, 58); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + output.second.emplace_back(17, 51); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + output.second.emplace_back(17, 52); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + output.second.emplace_back(17, 53); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + output.second.emplace_back(17, 54); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[220], y[221], y[222], y[223])) + { + output.second.emplace_back(17, 55); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[224], y[225], y[226], y[227])) + { + output.second.emplace_back(17, 56); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[228], y[229], y[230], y[231])) + { + output.second.emplace_back(17, 57); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[232], y[233], y[234], y[235])) + { + output.second.emplace_back(17, 58); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(10, 59); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(10, 60); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(10, 61); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(10, 62); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(10, 63); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(10, 64); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(10, 65); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(11, 59); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(11, 60); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(11, 61); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(11, 62); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(11, 63); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(11, 64); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(11, 65); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(12, 59); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(12, 60); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(12, 61); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(12, 62); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(12, 63); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(12, 64); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(12, 65); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(13, 59); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(13, 60); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(13, 61); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(13, 62); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(13, 63); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(13, 64); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(13, 65); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(14, 59); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(14, 60); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(14, 61); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(14, 62); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(14, 63); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(14, 64); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(14, 65); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(15, 59); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(15, 60); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(15, 61); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(15, 62); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(15, 63); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(15, 64); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(15, 65); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(16, 59); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(16, 60); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(16, 61); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(16, 62); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(16, 63); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(16, 64); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(16, 65); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[236], y[237], y[238], y[239])) + { + output.second.emplace_back(17, 59); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[240], y[241], y[242], y[243])) + { + output.second.emplace_back(17, 60); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[244], y[245], y[246], y[247])) + { + output.second.emplace_back(17, 61); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[248], y[249], y[250], y[251])) + { + output.second.emplace_back(17, 62); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[252], y[253], y[254], y[255])) + { + output.second.emplace_back(17, 63); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[256], y[257], y[258], y[259])) + { + output.second.emplace_back(17, 64); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[260], y[261], y[262], y[263])) + { + output.second.emplace_back(17, 65); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(10, 66); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(10, 67); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(10, 68); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(10, 69); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(10, 70); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(11, 66); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(11, 67); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(11, 68); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(11, 69); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(11, 70); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(12, 66); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(12, 67); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(12, 68); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(12, 69); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(12, 70); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(13, 66); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(13, 67); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(13, 68); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(13, 69); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(13, 70); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(14, 66); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(14, 67); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(14, 68); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(14, 69); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(14, 70); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(15, 66); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(15, 67); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(15, 68); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(15, 69); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(15, 70); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(16, 66); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(16, 67); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(16, 68); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(16, 69); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(16, 70); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[264], y[265], y[266], y[267])) + { + output.second.emplace_back(17, 66); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[268], y[269], y[270], y[271])) + { + output.second.emplace_back(17, 67); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[272], y[273], y[274], y[275])) + { + output.second.emplace_back(17, 68); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[276], y[277], y[278], y[279])) + { + output.second.emplace_back(17, 69); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[280], y[281], y[282], y[283])) + { + output.second.emplace_back(17, 70); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(10, 71); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(10, 72); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(10, 73); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(10, 74); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(10, 75); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(10, 76); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(10, 77); + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(10, 78); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(11, 71); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(11, 72); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(11, 73); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(11, 74); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(11, 75); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(11, 76); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(11, 77); + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(11, 78); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(12, 71); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(12, 72); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(12, 73); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(12, 74); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(12, 75); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(12, 76); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(12, 77); + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(12, 78); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(13, 71); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(13, 72); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(13, 73); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(13, 74); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(13, 75); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(13, 76); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(13, 77); + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(13, 78); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(14, 71); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(14, 72); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(14, 73); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(14, 74); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(14, 75); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(14, 76); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(14, 77); + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(14, 78); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(15, 71); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(15, 72); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(15, 73); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(15, 74); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(15, 75); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(15, 76); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(15, 77); + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(15, 78); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(16, 71); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(16, 72); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(16, 73); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(16, 74); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(16, 75); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(16, 76); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(16, 77); + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(16, 78); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[284], y[285], y[286], y[287])) + { + output.second.emplace_back(17, 71); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[288], y[289], y[290], y[291])) + { + output.second.emplace_back(17, 72); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[292], y[293], y[294], y[295])) + { + output.second.emplace_back(17, 73); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[296], y[297], y[298], y[299])) + { + output.second.emplace_back(17, 74); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[300], y[301], y[302], y[303])) + { + output.second.emplace_back(17, 75); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[304], y[305], y[306], y[307])) + { + output.second.emplace_back(17, 76); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[308], y[309], y[310], y[311])) + { + output.second.emplace_back(17, 77); + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[312], y[313], y[314], y[315])) + { + output.second.emplace_back(17, 78); + } + + return output; + } + + template + inline static bool fkcc( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept + { + std::array, 56> v; + std::array, 380> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -1. * v[0] + -1.22464679914735e-16 * v[1]; + v[3] = -v[1]; + v[4] = -1. * v[3] + -1.22464679914735e-16 * v[0]; + y[4] = -0.000288299505126466 * v[2] + -0.00873530766096221 * v[4]; + v[1] = 1.22464679914735e-16 * v[0] + -1. * v[1]; + v[3] = 1.22464679914735e-16 * v[3] + -1. * v[0]; + y[5] = -0.000288299505126466 * v[1] + -0.00873530766096221 * v[3]; + v[0] = cos(x[1]); + v[5] = sin(x[1]); + v[6] = -2.05103489747671e-10 * v[5]; + v[7] = v[2] * v[0] + v[4] * v[6]; + v[8] = -v[5]; + v[9] = -2.05103489747671e-10 * v[0]; + v[10] = v[2] * v[8] + v[4] * v[9]; + v[11] = -1. * v[4]; + y[8] = -0.607041969037533 * v[7] + 1.42804932594299e-06 * v[10] + 0.16623906538415 * v[11]; + v[6] = v[1] * v[0] + v[3] * v[6]; + v[9] = v[1] * v[8] + v[3] * v[9]; + v[8] = -1. * v[3]; + y[9] = -0.607041969037533 * v[6] + 1.42804932594299e-06 * v[9] + 0.16623906538415 * v[8]; + y[10] = 0.1807 + -0.607041969037533 * v[5] + -3.40962124426803e-11 + 1.42804932594299e-06 * v[0]; + y[12] = 0.000413030962467198 * v[7] + 5.42804932594299e-06 * v[10] + 0.17160506538415 * v[11]; + y[13] = 0.000413030962467198 * v[6] + 5.42804932594299e-06 * v[9] + 0.17160506538415 * v[8]; + y[14] = + 0.1807 + 0.000413030962467198 * v[5] + -3.51967977686664e-11 + 5.42804932594299e-06 * v[0]; + y[16] = -0.516884969037533 * v[7] + 3.42804932594299e-06 * v[10] + 0.16899706538415 * v[11]; + y[17] = -0.516884969037533 * v[6] + 3.42804932594299e-06 * v[9] + 0.16899706538415 * v[8]; + y[18] = 0.1807 + -0.516884969037533 * v[5] + -3.46618878674044e-11 + 3.42804932594299e-06 * v[0]; + y[20] = -0.423410969037533 * v[7] + 9.42804932594299e-06 * v[10] + 0.17053706538415 * v[11]; + y[21] = -0.423410969037533 * v[6] + 9.42804932594299e-06 * v[9] + 0.17053706538415 * v[8]; + y[22] = 0.1807 + -0.423410969037533 * v[5] + -3.49777472416158e-11 + 9.42804932594299e-06 * v[0]; + y[24] = -0.328266969037533 * v[7] + 1.2428049325943e-05 * v[10] + 0.17244706538415 * v[11]; + y[25] = -0.328266969037533 * v[6] + 1.2428049325943e-05 * v[9] + 0.17244706538415 * v[8]; + y[26] = 0.1807 + -0.328266969037533 * v[5] + -3.53694949070339e-11 + 1.2428049325943e-05 * v[0]; + y[28] = -0.225282969037533 * v[7] + 1.8428049325943e-05 * v[10] + 0.17491006538415 * v[11]; + y[29] = -0.225282969037533 * v[6] + 1.8428049325943e-05 * v[9] + 0.17491006538415 * v[8]; + y[30] = 0.1807 + -0.225282969037533 * v[5] + -3.58746648022824e-11 + 1.8428049325943e-05 * v[0]; + y[32] = -0.129197969037533 * v[7] + 2.6428049325943e-05 * v[10] + 0.17046706538415 * v[11]; + y[33] = -0.129197969037533 * v[6] + 2.6428049325943e-05 * v[9] + 0.17046706538415 * v[8]; + y[34] = 0.1807 + -0.129197969037533 * v[5] + -3.49633899973335e-11 + 2.6428049325943e-05 * v[0]; + y[36] = -0.0292619690375328 * v[7] + 6.42804932594299e-06 * v[10] + 0.17915506538415 * v[11]; + y[37] = -0.0292619690375328 * v[6] + 6.42804932594299e-06 * v[9] + 0.17915506538415 * v[8]; + y[38] = 0.1807 + -0.0292619690375328 * v[5] + -3.67453291162613e-11 + 6.42804932594299e-06 * v[0]; + v[12] = cos(x[2]); + v[13] = sin(x[2]); + v[14] = v[7] * v[12] + v[10] * v[13]; + v[15] = -v[13]; + v[16] = v[7] * v[15] + v[10] * v[12]; + v[17] = -0.6127 * v[7]; + y[40] = -0.563005578970909 * v[14] + 6.19744038581848e-06 * v[16] + 0.0494461657419205 * v[11] + + v[17]; + v[18] = v[6] * v[12] + v[9] * v[13]; + v[19] = v[6] * v[15] + v[9] * v[12]; + v[20] = -0.6127 * v[6]; + y[41] = + -0.563005578970909 * v[18] + 6.19744038581848e-06 * v[19] + 0.0494461657419205 * v[8] + v[20]; + v[13] = v[5] * v[12] + v[0] * v[13]; + v[15] = v[5] * v[15] + v[0] * v[12]; + v[12] = 0.1807 + -0.6127 * v[5]; + y[42] = -0.563005578970909 * v[13] + -1.01415811483096e-11 + 6.19744038581848e-06 * v[15] + v[12]; + y[44] = -0.489168578970909 * v[14] + -8.02559614181519e-07 * v[16] + 0.0491121657419205 * v[11] + + v[17]; + y[45] = -0.489168578970909 * v[18] + -8.02559614181519e-07 * v[19] + 0.0491121657419205 * v[8] + + v[20]; + y[46] = + -0.489168578970909 * v[13] + -1.00730765827339e-11 + -8.02559614181519e-07 * v[15] + v[12]; + y[48] = -0.406023578970909 * v[14] + -5.80255961418152e-06 * v[16] + 0.0465401657419205 * v[11] + + v[17]; + y[49] = -0.406023578970909 * v[18] + -5.80255961418152e-06 * v[19] + 0.0465401657419205 * v[8] + + v[20]; + y[50] = + -0.406023578970909 * v[13] + -9.54555040710291e-12 + -5.80255961418152e-06 * v[15] + v[12]; + y[52] = -0.331356578970909 * v[14] + -1.18025596141815e-05 * v[16] + 0.0518921657419205 * v[11] + + v[17]; + y[53] = -0.331356578970909 * v[18] + -1.18025596141815e-05 * v[19] + 0.0518921657419205 * v[8] + + v[20]; + y[54] = + -0.331356578970909 * v[13] + -1.06432642842324e-11 + -1.18025596141815e-05 * v[15] + v[12]; + y[56] = -0.252682578970909 * v[14] + -1.88025596141815e-05 * v[16] + 0.0485491657419205 * v[11] + + v[17]; + y[57] = -0.252682578970909 * v[18] + -1.88025596141815e-05 * v[19] + 0.0485491657419205 * v[8] + + v[20]; + y[58] = + -0.252682578970909 * v[13] + -9.95760331800598e-12 + -1.88025596141815e-05 * v[15] + v[12]; + y[60] = -0.162805578970909 * v[14] + 0.000842197440385818 * v[16] + 0.0465861657419205 * v[11] + + v[17]; + y[61] = + -0.162805578970909 * v[18] + 0.000842197440385818 * v[19] + 0.0465861657419205 * v[8] + v[20]; + y[62] = -0.162805578970909 * v[13] + -9.5549851676313e-12 + 0.000842197440385818 * v[15] + v[12]; + y[64] = -0.0761155789709091 * v[14] + -0.000181802559614182 * v[16] + 0.0427021657419205 * v[11] + + v[17]; + y[65] = -0.0761155789709091 * v[18] + -0.000181802559614182 * v[19] + 0.0427021657419205 * v[8] + + v[20]; + y[66] = + -0.0761155789709091 * v[13] + -8.75836321345134e-12 + -0.000181802559614182 * v[15] + v[12]; + y[68] = -0.000915578970909103 * v[14] + 0.000353197440385818 * v[16] + + 0.0574301657419205 * v[11] + v[17]; + y[69] = -0.000915578970909103 * v[18] + 0.000353197440385818 * v[19] + 0.0574301657419205 * v[8] + + v[20]; + y[70] = + -0.000915578970909103 * v[13] + -1.1779127410455e-11 + 0.000353197440385818 * v[15] + v[12]; + v[21] = cos(x[3]); + v[22] = sin(x[3]); + v[23] = v[14] * v[21] + v[16] * v[22]; + v[24] = -v[22]; + v[25] = v[14] * v[24] + v[16] * v[21]; + v[26] = v[17] + -0.57155 * v[14] + 0.17415 * v[11]; + y[72] = -3.24659049510956e-06 * v[23] + -0.0088331080224514 * v[25] + + -0.0100402649126053 * v[11] + v[26]; + v[27] = v[18] * v[21] + v[19] * v[22]; + v[28] = v[18] * v[24] + v[19] * v[21]; + v[29] = v[20] + -0.57155 * v[18] + 0.17415 * v[8]; + y[73] = -3.24659049510956e-06 * v[27] + -0.0088331080224514 * v[28] + -0.0100402649126053 * v[8] + + v[29]; + v[22] = v[13] * v[21] + v[15] * v[22]; + v[24] = v[13] * v[24] + v[15] * v[21]; + v[21] = v[12] + -3.57187727395569e-11 + -0.57155 * v[13]; + y[74] = + -3.24659049510956e-06 * v[22] + 2.05929337156644e-12 + -0.0088331080224514 * v[24] + v[21]; + v[30] = cos(x[4]); + v[31] = sin(x[4]); + v[32] = -2.05103489747671e-10 * v[31]; + v[33] = v[23] * v[30] + v[25] * v[32] + v[11] * v[31]; + v[34] = -v[31]; + v[35] = -2.05103489747671e-10 * v[30]; + v[36] = v[23] * v[34] + v[25] * v[35] + v[11] * v[30]; + v[37] = -1. * v[25] + -2.05103489747671e-10 * v[11]; + v[38] = v[26] + -0.11985 * v[25] + -2.45816459075624e-11 * v[11]; + y[76] = -0.000313147310428718 * v[33] + 0.00790893117351034 * v[36] + + -0.0025966766253855 * v[37] + v[38]; + v[39] = v[27] * v[30] + v[28] * v[32] + v[8] * v[31]; + v[40] = v[27] * v[34] + v[28] * v[35] + v[8] * v[30]; + v[41] = -1. * v[28] + -2.05103489747671e-10 * v[8]; + v[42] = v[29] + -0.11985 * v[28] + -2.45816459075624e-11 * v[8]; + y[77] = -0.000313147310428718 * v[39] + 0.00790893117351034 * v[40] + + -0.0025966766253855 * v[41] + v[42]; + v[32] = v[22] * v[30] + v[24] * v[32] + -2.05103489747671e-10 * v[31]; + v[35] = v[22] * v[34] + v[24] * v[35] + -2.05103489747671e-10 * v[30]; + v[34] = 4.2067441506673e-20 + -1. * v[24]; + v[30] = v[21] + 5.04178135938262e-21 + -0.11985 * v[24]; + y[78] = -0.000313147310428718 * v[32] + 0.00790893117351034 * v[35] + + -0.0025966766253855 * v[34] + v[30]; + v[31] = cos(x[5]); + v[43] = sin(x[5]); + v[44] = v[31] + -1.22464679939853e-16 * v[43]; + v[45] = -1.22464679914735e-16 * v[31] + -2.05103489747671e-10 * v[43]; + v[46] = -1.22464679914735e-16 * v[31] + -1. * v[43]; + v[47] = v[33] * v[44] + v[36] * v[45] + v[37] * v[46]; + v[43] = -v[43]; + v[48] = v[43] + -1.22464679939853e-16 * v[31]; + v[49] = -1.22464679914735e-16 * v[43] + -2.05103489747671e-10 * v[31]; + v[43] = -1.22464679914735e-16 * v[43] + -1. * v[31]; + v[31] = v[33] * v[48] + v[36] * v[49] + v[37] * v[43]; + v[50] = 1.22464679889617e-16 * v[33] + v[36] + -2.05103489747671e-10 * v[37]; + v[51] = v[38] + 0.11655 * v[36] + -2.39048045934618e-11 * v[37]; + y[80] = -0.00017564292037487 * v[47] + -0.00074144667053222 * v[31] + + -0.0244805331659317 * v[50] + v[51]; + v[52] = v[39] * v[44] + v[40] * v[45] + v[41] * v[46]; + v[53] = v[39] * v[48] + v[40] * v[49] + v[41] * v[43]; + v[54] = 1.22464679889617e-16 * v[39] + v[40] + -2.05103489747671e-10 * v[41]; + v[55] = v[42] + 0.11655 * v[40] + -2.39048045934618e-11 * v[41]; + y[81] = -0.00017564292037487 * v[52] + -0.00074144667053222 * v[53] + + -0.0244805331659317 * v[54] + v[55]; + v[46] = v[32] * v[44] + v[35] * v[45] + v[34] * v[46]; + v[43] = v[32] * v[48] + v[35] * v[49] + v[34] * v[43]; + v[49] = 1.22464679889617e-16 * v[32] + v[35] + -2.05103489747671e-10 * v[34]; + v[48] = v[30] + 0.11655 * v[35] + -2.39048045934618e-11 * v[34]; + y[82] = -0.00017564292037487 * v[46] + -0.00074144667053222 * v[43] + + -0.0244805331659317 * v[49] + v[48]; + y[84] = 0.00107514814060296 * v[47] + 0.000423320496660516 * v[31] + + -0.00408291128903037 * v[50] + v[51]; + y[85] = 0.00107514814060296 * v[52] + 0.000423320496660516 * v[53] + + -0.00408291128903037 * v[54] + v[55]; + y[86] = 0.00107514814060296 * v[46] + 0.000423320496660516 * v[43] + + -0.00408291128903037 * v[49] + v[48]; + y[88] = -0.000199851859397042 * v[47] + 7.63204966605162e-05 * v[31] + + 0.0231310887109696 * v[50] + v[51]; + y[89] = -0.000199851859397042 * v[52] + 7.63204966605162e-05 * v[53] + + 0.0231310887109696 * v[54] + v[55]; + y[90] = -0.000199851859397042 * v[46] + 7.63204966605162e-05 * v[43] + + 0.0231310887109696 * v[49] + v[48]; + y[92] = + 0.0444889418603304 * v[47] + 0.00804466059900797 * v[31] + 0.0746938738375369 * v[50] + v[51]; + y[93] = + 0.0444889418603304 * v[52] + 0.00804466059900797 * v[53] + 0.0746938738375369 * v[54] + v[55]; + y[94] = + 0.0444889418603304 * v[46] + 0.00804466059900797 * v[43] + 0.0746938738375369 * v[49] + v[48]; + y[96] = + 0.0143949418603304 * v[47] + -0.015607339400992 * v[31] + 0.0342678738375368 * v[50] + v[51]; + y[97] = + 0.0143949418603304 * v[52] + -0.015607339400992 * v[53] + 0.0342678738375368 * v[54] + v[55]; + y[98] = + 0.0143949418603304 * v[46] + -0.015607339400992 * v[43] + 0.0342678738375368 * v[49] + v[48]; + y[100] = 0.0450229418603304 * v[47] + -0.00814133940099203 * v[31] + 0.0747888738375369 * v[50] + + v[51]; + y[101] = 0.0450229418603304 * v[52] + -0.00814133940099203 * v[53] + 0.0747888738375369 * v[54] + + v[55]; + y[102] = 0.0450229418603304 * v[46] + -0.00814133940099203 * v[43] + 0.0747888738375369 * v[49] + + v[48]; + y[104] = + 0.0349399418603304 * v[47] + 0.00851466059900797 * v[31] + 0.0614948738375369 * v[50] + v[51]; + y[105] = + 0.0349399418603304 * v[52] + 0.00851466059900797 * v[53] + 0.0614948738375369 * v[54] + v[55]; + y[106] = + 0.0349399418603304 * v[46] + 0.00851466059900797 * v[43] + 0.0614948738375369 * v[49] + v[48]; + y[108] = + 0.0155629418603304 * v[47] + 0.015429660599008 * v[31] + 0.0357898738375369 * v[50] + v[51]; + y[109] = + 0.0155629418603304 * v[52] + 0.015429660599008 * v[53] + 0.0357898738375369 * v[54] + v[55]; + y[110] = + 0.0155629418603304 * v[46] + 0.015429660599008 * v[43] + 0.0357898738375369 * v[49] + v[48]; + y[112] = + 0.0231689418603304 * v[47] + -0.014684339400992 * v[31] + 0.0463518738375369 * v[50] + v[51]; + y[113] = + 0.0231689418603304 * v[52] + -0.014684339400992 * v[53] + 0.0463518738375369 * v[54] + v[55]; + y[114] = + 0.0231689418603304 * v[46] + -0.014684339400992 * v[43] + 0.0463518738375369 * v[49] + v[48]; + y[116] = + 0.0331909418603304 * v[47] + -0.011181339400992 * v[31] + 0.0599398738375369 * v[50] + v[51]; + y[117] = + 0.0331909418603304 * v[52] + -0.011181339400992 * v[53] + 0.0599398738375369 * v[54] + v[55]; + y[118] = + 0.0331909418603304 * v[46] + -0.011181339400992 * v[43] + 0.0599398738375369 * v[49] + v[48]; + y[120] = + 0.0263189418603304 * v[47] + 0.013959660599008 * v[31] + 0.0511568738375369 * v[50] + v[51]; + y[121] = + 0.0263189418603304 * v[52] + 0.013959660599008 * v[53] + 0.0511568738375369 * v[54] + v[55]; + y[122] = + 0.0263189418603304 * v[46] + 0.013959660599008 * v[43] + 0.0511568738375369 * v[49] + v[48]; + y[124] = 0.0623787980982067 * v[47] + -0.000234199006115228 * v[31] + 0.0721059691962172 * v[50] + + v[51]; + y[125] = 0.0623787980982067 * v[52] + -0.000234199006115228 * v[53] + 0.0721059691962172 * v[54] + + v[55]; + y[126] = 0.0623787980982067 * v[46] + -0.000234199006115228 * v[43] + 0.0721059691962172 * v[49] + + v[48]; + y[128] = 0.0487957980982067 * v[47] + -4.01990061152315e-05 * v[31] + 0.0788669691962172 * v[50] + + v[51]; + y[129] = 0.0487957980982067 * v[52] + -4.01990061152315e-05 * v[53] + 0.0788669691962172 * v[54] + + v[55]; + y[130] = 0.0487957980982067 * v[46] + -4.01990061152315e-05 * v[43] + 0.0788669691962172 * v[49] + + v[48]; + y[132] = + 0.0445177980982067 * v[47] + 0.00426880099388477 * v[31] + 0.112418969196217 * v[50] + v[51]; + y[133] = + 0.0445177980982067 * v[52] + 0.00426880099388477 * v[53] + 0.112418969196217 * v[54] + v[55]; + y[134] = + 0.0445177980982067 * v[46] + 0.00426880099388477 * v[43] + 0.112418969196217 * v[49] + v[48]; + y[136] = + 0.0445317980982067 * v[47] + -0.00397219900611523 * v[31] + 0.113735969196217 * v[50] + v[51]; + y[137] = + 0.0445317980982067 * v[52] + -0.00397219900611523 * v[53] + 0.113735969196217 * v[54] + v[55]; + y[138] = + 0.0445317980982067 * v[46] + -0.00397219900611523 * v[43] + 0.113735969196217 * v[49] + v[48]; + y[140] = + 0.0461197980982067 * v[47] + 0.000114800993884768 * v[31] + 0.103681969196217 * v[50] + v[51]; + y[141] = + 0.0461197980982067 * v[52] + 0.000114800993884768 * v[53] + 0.103681969196217 * v[54] + v[55]; + y[142] = + 0.0461197980982067 * v[46] + 0.000114800993884768 * v[43] + 0.103681969196217 * v[49] + v[48]; + y[144] = 0.0460907980982067 * v[47] + -0.00245419900611523 * v[31] + 0.0926159691962172 * v[50] + + v[51]; + y[145] = 0.0460907980982067 * v[52] + -0.00245419900611523 * v[53] + 0.0926159691962172 * v[54] + + v[55]; + y[146] = 0.0460907980982067 * v[46] + -0.00245419900611523 * v[43] + 0.0926159691962172 * v[49] + + v[48]; + y[148] = + 0.0441217980982067 * v[47] + 0.00562580099388477 * v[31] + 0.0930719691962172 * v[50] + v[51]; + y[149] = + 0.0441217980982067 * v[52] + 0.00562580099388477 * v[53] + 0.0930719691962172 * v[54] + v[55]; + y[150] = + 0.0441217980982067 * v[46] + 0.00562580099388477 * v[43] + 0.0930719691962172 * v[49] + v[48]; + y[152] = 0.0552620541990758 * v[47] + 1.22706409919795e-17 * v[31] + 0.0331275379870581 * v[50] + + v[51]; + y[153] = 0.0552620541990758 * v[52] + 1.22706409919795e-17 * v[53] + 0.0331275379870581 * v[54] + + v[55]; + y[154] = 0.0552620541990758 * v[46] + 1.22706409919795e-17 * v[43] + 0.0331275379870581 * v[49] + + v[48]; + y[156] = 0.0311880541990758 * v[47] + 6.92513917301426e-18 * v[31] + 0.0254065379870581 * v[50] + + v[51]; + y[157] = 0.0311880541990758 * v[52] + 6.92513917301426e-18 * v[53] + 0.0254065379870581 * v[54] + + v[55]; + y[158] = 0.0311880541990758 * v[46] + 6.92513917301426e-18 * v[43] + 0.0254065379870581 * v[49] + + v[48]; + y[160] = 0.0585960541990758 * v[47] + 1.30109377047995e-17 * v[31] + 0.0278055379870581 * v[50] + + v[51]; + y[161] = 0.0585960541990758 * v[52] + 1.30109377047995e-17 * v[53] + 0.0278055379870581 * v[54] + + v[55]; + y[162] = 0.0585960541990758 * v[46] + 1.30109377047995e-17 * v[43] + 0.0278055379870581 * v[49] + + v[48]; + y[164] = 0.0453500541990758 * v[47] + 1.00697348679625e-17 * v[31] + 0.0262125379870581 * v[50] + + v[51]; + y[165] = 0.0453500541990758 * v[52] + 1.00697348679625e-17 * v[53] + 0.0262125379870581 * v[54] + + v[55]; + y[166] = 0.0453500541990758 * v[46] + 1.00697348679625e-17 * v[43] + 0.0262125379870581 * v[49] + + v[48]; + y[168] = 0.0635240541990758 * v[47] + 1.41051735178701e-17 * v[31] + 0.0330105379870581 * v[50] + + v[51]; + y[169] = 0.0635240541990758 * v[52] + 1.41051735178701e-17 * v[53] + 0.0330105379870581 * v[54] + + v[55]; + y[170] = 0.0635240541990758 * v[46] + 1.41051735178701e-17 * v[43] + 0.0330105379870581 * v[49] + + v[48]; + y[172] = + 0.0651264623038461 * v[47] + 0.00851800000000001 * v[31] + 0.070495068913942 * v[50] + v[51]; + y[173] = + 0.0651264623038461 * v[52] + 0.00851800000000001 * v[53] + 0.070495068913942 * v[54] + v[55]; + y[174] = + 0.0651264623038461 * v[46] + 0.00851800000000001 * v[43] + 0.070495068913942 * v[49] + v[48]; + y[176] = + 0.0643414623038461 * v[47] + 0.00624200000000001 * v[31] + 0.055076068913942 * v[50] + v[51]; + y[177] = + 0.0643414623038461 * v[52] + 0.00624200000000001 * v[53] + 0.055076068913942 * v[54] + v[55]; + y[178] = + 0.0643414623038461 * v[46] + 0.00624200000000001 * v[43] + 0.055076068913942 * v[49] + v[48]; + y[180] = + 0.0649744623038461 * v[47] + -0.00847699999999999 * v[31] + 0.069285068913942 * v[50] + v[51]; + y[181] = + 0.0649744623038461 * v[52] + -0.00847699999999999 * v[53] + 0.069285068913942 * v[54] + v[55]; + y[182] = + 0.0649744623038461 * v[46] + -0.00847699999999999 * v[43] + 0.069285068913942 * v[49] + v[48]; + y[184] = + 0.0643704623038461 * v[47] + -0.00630099999999999 * v[31] + 0.054502068913942 * v[50] + v[51]; + y[185] = + 0.0643704623038461 * v[52] + -0.00630099999999999 * v[53] + 0.054502068913942 * v[54] + v[55]; + y[186] = + 0.0643704623038461 * v[46] + -0.00630099999999999 * v[43] + 0.054502068913942 * v[49] + v[48]; + y[188] = + 0.0633094623038461 * v[47] + -0.00602399999999999 * v[31] + 0.040743068913942 * v[50] + v[51]; + y[189] = + 0.0633094623038461 * v[52] + -0.00602399999999999 * v[53] + 0.040743068913942 * v[54] + v[55]; + y[190] = + 0.0633094623038461 * v[46] + -0.00602399999999999 * v[43] + 0.040743068913942 * v[49] + v[48]; + y[192] = + 0.0631514623038461 * v[47] + 0.00523600000000001 * v[31] + 0.037942068913942 * v[50] + v[51]; + y[193] = + 0.0631514623038461 * v[52] + 0.00523600000000001 * v[53] + 0.037942068913942 * v[54] + v[55]; + y[194] = + 0.0631514623038461 * v[46] + 0.00523600000000001 * v[43] + 0.037942068913942 * v[49] + v[48]; + y[196] = + 0.0622994623038461 * v[47] + 0.00742700000000001 * v[31] + 0.024559068913942 * v[50] + v[51]; + y[197] = + 0.0622994623038461 * v[52] + 0.00742700000000001 * v[53] + 0.024559068913942 * v[54] + v[55]; + y[198] = + 0.0622994623038461 * v[46] + 0.00742700000000001 * v[43] + 0.024559068913942 * v[49] + v[48]; + y[200] = + 0.0625164623038461 * v[47] + -0.00732999999999999 * v[31] + 0.027526068913942 * v[50] + v[51]; + y[201] = + 0.0625164623038461 * v[52] + -0.00732999999999999 * v[53] + 0.027526068913942 * v[54] + v[55]; + y[202] = + 0.0625164623038461 * v[46] + -0.00732999999999999 * v[43] + 0.027526068913942 * v[49] + v[48]; + y[204] = -0.0444889418600303 * v[47] + -0.00804466059900787 * v[31] + 0.074693873837609 * v[50] + + v[51]; + y[205] = -0.0444889418600303 * v[52] + -0.00804466059900787 * v[53] + 0.074693873837609 * v[54] + + v[55]; + y[206] = -0.0444889418600303 * v[46] + -0.00804466059900787 * v[43] + 0.074693873837609 * v[49] + + v[48]; + y[208] = + -0.0143949418600302 * v[47] + 0.015607339400992 * v[31] + 0.0342678738376091 * v[50] + v[51]; + y[209] = + -0.0143949418600302 * v[52] + 0.015607339400992 * v[53] + 0.0342678738376091 * v[54] + v[55]; + y[210] = + -0.0143949418600302 * v[46] + 0.015607339400992 * v[43] + 0.0342678738376091 * v[49] + v[48]; + y[212] = + -0.0450229418600302 * v[47] + 0.00814133940099214 * v[31] + 0.074788873837609 * v[50] + v[51]; + y[213] = + -0.0450229418600302 * v[52] + 0.00814133940099214 * v[53] + 0.074788873837609 * v[54] + v[55]; + y[214] = + -0.0450229418600302 * v[46] + 0.00814133940099214 * v[43] + 0.074788873837609 * v[49] + v[48]; + y[216] = -0.0349399418600303 * v[47] + -0.00851466059900789 * v[31] + 0.0614948738376091 * v[50] + + v[51]; + y[217] = -0.0349399418600303 * v[52] + -0.00851466059900789 * v[53] + 0.0614948738376091 * v[54] + + v[55]; + y[218] = -0.0349399418600303 * v[46] + -0.00851466059900789 * v[43] + 0.0614948738376091 * v[49] + + v[48]; + y[220] = + -0.0155629418600303 * v[47] + -0.015429660599008 * v[31] + 0.0357898738376091 * v[50] + v[51]; + y[221] = + -0.0155629418600303 * v[52] + -0.015429660599008 * v[53] + 0.0357898738376091 * v[54] + v[55]; + y[222] = + -0.0155629418600303 * v[46] + -0.015429660599008 * v[43] + 0.0357898738376091 * v[49] + v[48]; + y[224] = + -0.0231689418600302 * v[47] + 0.0146843394009921 * v[31] + 0.0463518738376091 * v[50] + v[51]; + y[225] = + -0.0231689418600302 * v[52] + 0.0146843394009921 * v[53] + 0.0463518738376091 * v[54] + v[55]; + y[226] = + -0.0231689418600302 * v[46] + 0.0146843394009921 * v[43] + 0.0463518738376091 * v[49] + v[48]; + y[228] = + -0.0331909418600302 * v[47] + 0.0111813394009921 * v[31] + 0.0599398738376091 * v[50] + v[51]; + y[229] = + -0.0331909418600302 * v[52] + 0.0111813394009921 * v[53] + 0.0599398738376091 * v[54] + v[55]; + y[230] = + -0.0331909418600302 * v[46] + 0.0111813394009921 * v[43] + 0.0599398738376091 * v[49] + v[48]; + y[232] = -0.0263189418600303 * v[47] + -0.0139596605990079 * v[31] + 0.0511568738376091 * v[50] + + v[51]; + y[233] = -0.0263189418600303 * v[52] + -0.0139596605990079 * v[53] + 0.0511568738376091 * v[54] + + v[55]; + y[234] = -0.0263189418600303 * v[46] + -0.0139596605990079 * v[43] + 0.0511568738376091 * v[49] + + v[48]; + y[236] = -0.0618995347823531 * v[47] + 0.000234199006115388 * v[31] + 0.0724663376686607 * v[50] + + v[51]; + y[237] = -0.0618995347823531 * v[52] + 0.000234199006115388 * v[53] + 0.0724663376686607 * v[54] + + v[55]; + y[238] = -0.0618995347823531 * v[46] + 0.000234199006115388 * v[43] + 0.0724663376686607 * v[49] + + v[48]; + y[240] = -0.0483165347823531 * v[47] + 4.01990061153467e-05 * v[31] + 0.0792273376686607 * v[50] + + v[51]; + y[241] = -0.0483165347823531 * v[52] + 4.01990061153467e-05 * v[53] + 0.0792273376686607 * v[54] + + v[55]; + y[242] = -0.0483165347823531 * v[46] + 4.01990061153467e-05 * v[43] + 0.0792273376686607 * v[49] + + v[48]; + y[244] = -0.0440385347823531 * v[47] + -0.00426880099388467 * v[31] + 0.112779337668661 * v[50] + + v[51]; + y[245] = -0.0440385347823531 * v[52] + -0.00426880099388467 * v[53] + 0.112779337668661 * v[54] + + v[55]; + y[246] = -0.0440385347823531 * v[46] + -0.00426880099388467 * v[43] + 0.112779337668661 * v[49] + + v[48]; + y[248] = + -0.0440525347823531 * v[47] + 0.00397219900611533 * v[31] + 0.114096337668661 * v[50] + v[51]; + y[249] = + -0.0440525347823531 * v[52] + 0.00397219900611533 * v[53] + 0.114096337668661 * v[54] + v[55]; + y[250] = + -0.0440525347823531 * v[46] + 0.00397219900611533 * v[43] + 0.114096337668661 * v[49] + v[48]; + y[252] = -0.0456405347823531 * v[47] + -0.000114800993884661 * v[31] + 0.104042337668661 * v[50] + + v[51]; + y[253] = -0.0456405347823531 * v[52] + -0.000114800993884661 * v[53] + 0.104042337668661 * v[54] + + v[55]; + y[254] = -0.0456405347823531 * v[46] + -0.000114800993884661 * v[43] + 0.104042337668661 * v[49] + + v[48]; + y[256] = -0.0456115347823531 * v[47] + 0.00245419900611534 * v[31] + 0.0929763376686607 * v[50] + + v[51]; + y[257] = -0.0456115347823531 * v[52] + 0.00245419900611534 * v[53] + 0.0929763376686607 * v[54] + + v[55]; + y[258] = -0.0456115347823531 * v[46] + 0.00245419900611534 * v[43] + 0.0929763376686607 * v[49] + + v[48]; + y[260] = -0.0436425347823531 * v[47] + -0.00562580099388467 * v[31] + 0.0934323376686607 * v[50] + + v[51]; + y[261] = -0.0436425347823531 * v[52] + -0.00562580099388467 * v[53] + 0.0934323376686607 * v[54] + + v[55]; + y[262] = -0.0436425347823531 * v[46] + -0.00562580099388467 * v[43] + 0.0934323376686607 * v[49] + + v[48]; + y[264] = -0.0552620541989112 * v[47] + 6.74109569768114e-17 * v[31] + 0.0331275379870581 * v[50] + + v[51]; + y[265] = -0.0552620541989112 * v[52] + 6.74109569768114e-17 * v[53] + 0.0331275379870581 * v[54] + + v[55]; + y[266] = -0.0552620541989112 * v[46] + 6.74109569768114e-17 * v[43] + 0.0331275379870581 * v[49] + + v[48]; + y[268] = -0.0311880541989112 * v[47] + -5.02878137400361e-18 * v[31] + + 0.0254065379870581 * v[50] + v[51]; + y[269] = -0.0311880541989112 * v[52] + -5.02878137400361e-18 * v[53] + + 0.0254065379870581 * v[54] + v[55]; + y[270] = -0.0311880541989112 * v[46] + -5.02878137400361e-18 * v[43] + + 0.0254065379870581 * v[49] + v[48]; + y[272] = -0.0585960541989112 * v[47] + 7.74431114863078e-17 * v[31] + 0.0278055379870581 * v[50] + + v[51]; + y[273] = -0.0585960541989112 * v[52] + 7.74431114863078e-17 * v[53] + 0.0278055379870581 * v[54] + + v[55]; + y[274] = -0.0585960541989112 * v[46] + 7.74431114863078e-17 * v[43] + 0.0278055379870581 * v[49] + + v[48]; + y[276] = -0.0453500541989112 * v[47] + 3.75853074572767e-17 * v[31] + 0.0262125379870581 * v[50] + + v[51]; + y[277] = -0.0453500541989112 * v[52] + 3.75853074572767e-17 * v[53] + 0.0262125379870581 * v[54] + + v[55]; + y[278] = -0.0453500541989112 * v[46] + 3.75853074572767e-17 * v[43] + 0.0262125379870581 * v[49] + + v[48]; + y[280] = -0.0635240541989112 * v[47] + 9.22716829988448e-17 * v[31] + 0.0330105379870581 * v[50] + + v[51]; + y[281] = -0.0635240541989112 * v[52] + 9.22716829988448e-17 * v[53] + 0.0330105379870581 * v[54] + + v[55]; + y[282] = -0.0635240541989112 * v[46] + 9.22716829988448e-17 * v[43] + 0.0330105379870581 * v[49] + + v[48]; + y[284] = -0.0651450090137519 * v[47] + -0.0085179999999999 * v[31] + 0.0708276761757193 * v[50] + + v[51]; + y[285] = -0.0651450090137519 * v[52] + -0.0085179999999999 * v[53] + 0.0708276761757193 * v[54] + + v[55]; + y[286] = -0.0651450090137519 * v[46] + -0.0085179999999999 * v[43] + 0.0708276761757193 * v[49] + + v[48]; + y[288] = -0.0643600090137519 * v[47] + -0.00624199999999991 * v[31] + 0.0554086761757193 * v[50] + + v[51]; + y[289] = -0.0643600090137519 * v[52] + -0.00624199999999991 * v[53] + 0.0554086761757193 * v[54] + + v[55]; + y[290] = -0.0643600090137519 * v[46] + -0.00624199999999991 * v[43] + 0.0554086761757193 * v[49] + + v[48]; + y[292] = + -0.0649930090137518 * v[47] + 0.0084770000000001 * v[31] + 0.0696176761757193 * v[50] + v[51]; + y[293] = + -0.0649930090137518 * v[52] + 0.0084770000000001 * v[53] + 0.0696176761757193 * v[54] + v[55]; + y[294] = + -0.0649930090137518 * v[46] + 0.0084770000000001 * v[43] + 0.0696176761757193 * v[49] + v[48]; + y[296] = -0.0643890090137518 * v[47] + 0.00630100000000009 * v[31] + 0.0548346761757193 * v[50] + + v[51]; + y[297] = -0.0643890090137518 * v[52] + 0.00630100000000009 * v[53] + 0.0548346761757193 * v[54] + + v[55]; + y[298] = -0.0643890090137518 * v[46] + 0.00630100000000009 * v[43] + 0.0548346761757193 * v[49] + + v[48]; + y[300] = -0.0633280090137518 * v[47] + 0.00602400000000009 * v[31] + 0.0410756761757193 * v[50] + + v[51]; + y[301] = -0.0633280090137518 * v[52] + 0.00602400000000009 * v[53] + 0.0410756761757193 * v[54] + + v[55]; + y[302] = -0.0633280090137518 * v[46] + 0.00602400000000009 * v[43] + 0.0410756761757193 * v[49] + + v[48]; + y[304] = -0.0631700090137519 * v[47] + -0.00523599999999991 * v[31] + 0.0382746761757193 * v[50] + + v[51]; + y[305] = -0.0631700090137519 * v[52] + -0.00523599999999991 * v[53] + 0.0382746761757193 * v[54] + + v[55]; + y[306] = -0.0631700090137519 * v[46] + -0.00523599999999991 * v[43] + 0.0382746761757193 * v[49] + + v[48]; + y[308] = -0.0623180090137519 * v[47] + -0.00742699999999991 * v[31] + 0.0248916761757193 * v[50] + + v[51]; + y[309] = -0.0623180090137519 * v[52] + -0.00742699999999991 * v[53] + 0.0248916761757193 * v[54] + + v[55]; + y[310] = -0.0623180090137519 * v[46] + -0.00742699999999991 * v[43] + 0.0248916761757193 * v[49] + + v[48]; + y[312] = -0.0625350090137518 * v[47] + 0.00733000000000009 * v[31] + 0.0278586761757193 * v[50] + + v[51]; + y[313] = -0.0625350090137518 * v[52] + 0.00733000000000009 * v[53] + 0.0278586761757193 * v[54] + + v[55]; + y[314] = -0.0625350090137518 * v[46] + 0.00733000000000009 * v[43] + 0.0278586761757193 * v[49] + + v[48]; + y[320] = -0.000288299517706037 * v[2] + -0.00873530749231577 * v[4]; + y[321] = -0.000288299517706037 * v[1] + -0.00873530749231577 * v[3]; + y[324] = -0.303314477205276 * v[7] + 3.42804924002849e-06 * v[10] + 0.168922066688538 * v[11]; + y[325] = -0.303314477205276 * v[6] + 3.42804924002849e-06 * v[9] + 0.168922066688538 * v[8]; + y[326] = 0.1807 + -0.303314477205276 * v[5] + -3.46465053732079e-11 + 3.42804924002849e-06 * v[0]; + y[328] = -0.284153372049332 * v[14] + 0.000178343747393228 * v[16] + 0.0534070208668709 * v[11] + + v[17]; + y[329] = + -0.284153372049332 * v[18] + 0.000178343747393228 * v[19] + 0.0534070208668709 * v[8] + v[20]; + y[330] = + -0.284153372049332 * v[13] + -1.09539663568219e-11 + 0.000178343747393228 * v[15] + v[12]; + y[332] = -3.24659049510956e-06 * v[23] + -0.00883310846984386 * v[25] + + -0.0100402645766735 * v[11] + v[26]; + y[333] = -3.24659049510956e-06 * v[27] + -0.00883310846984386 * v[28] + + -0.0100402645766735 * v[8] + v[29]; + y[334] = + -3.24659049510956e-06 * v[22] + 2.05929330266566e-12 + -0.00883310846984386 * v[24] + v[21]; + y[336] = -0.000313147320412099 * v[33] + 0.00790893100202084 * v[36] + + -0.00259667658247054 * v[37] + v[38]; + y[337] = -0.000313147320412099 * v[39] + 0.00790893100202084 * v[40] + + -0.00259667658247054 * v[41] + v[42]; + y[338] = -0.000313147320412099 * v[32] + 0.00790893100202084 * v[35] + + -0.00259667658247054 * v[34] + v[30]; + y[340] = -0.000175642926478758 * v[47] + -0.000741446681786329 * v[31] + + -0.0244805328547955 * v[50] + v[51]; + y[341] = -0.000175642926478758 * v[52] + -0.000741446681786329 * v[53] + + -0.0244805328547955 * v[54] + v[55]; + y[342] = -0.000175642926478758 * v[46] + -0.000741446681786329 * v[43] + + -0.0244805328547955 * v[49] + v[48]; + y[344] = 0.000641186255961657 * v[47] + 0.000305214809486642 * v[31] + + 0.00517970696091652 * v[50] + v[51]; + y[345] = 0.000641186255961657 * v[52] + 0.000305214809486642 * v[53] + + 0.00517970696091652 * v[54] + v[55]; + y[346] = 0.000641186255961657 * v[46] + 0.000305214809486642 * v[43] + + 0.00517970696091652 * v[49] + v[48]; + y[348] = 0.0288996081799269 * v[47] + -8.60016298247501e-05 * v[31] + 0.053745910525322 * v[50] + + v[51]; + y[349] = 0.0288996081799269 * v[52] + -8.60016298247501e-05 * v[53] + 0.053745910525322 * v[54] + + v[55]; + y[350] = 0.0288996081799269 * v[46] + -8.60016298247501e-05 * v[43] + 0.053745910525322 * v[49] + + v[48]; + y[352] = 0.0535754598677158 * v[47] + -0.000619045924395323 * v[31] + 0.0924018174409866 * v[50] + + v[51]; + y[353] = 0.0535754598677158 * v[52] + -0.000619045924395323 * v[53] + 0.0924018174409866 * v[54] + + v[55]; + y[354] = 0.0535754598677158 * v[46] + -0.000619045924395323 * v[43] + 0.0924018174409866 * v[49] + + v[48]; + y[356] = + 0.046760305762291 * v[47] + 1.03828736191616e-17 * v[31] + 0.0290684439241886 * v[50] + v[51]; + y[357] = + 0.046760305762291 * v[52] + 1.03828736191616e-17 * v[53] + 0.0290684439241886 * v[54] + v[55]; + y[358] = + 0.046760305762291 * v[46] + 1.03828736191616e-17 * v[43] + 0.0290684439241886 * v[49] + v[48]; + y[360] = + 0.0636855289340019 * v[47] + 0.00144436443224549 * v[31] + 0.0475660935044289 * v[50] + v[51]; + y[361] = + 0.0636855289340019 * v[52] + 0.00144436443224549 * v[53] + 0.0475660935044289 * v[54] + v[55]; + y[362] = + 0.0636855289340019 * v[46] + 0.00144436443224549 * v[43] + 0.0475660935044289 * v[49] + v[48]; + y[364] = -0.0288996081799269 * v[47] + 8.60016298247501e-05 * v[31] + 0.053745910525322 * v[50] + + v[51]; + y[365] = -0.0288996081799269 * v[52] + 8.60016298247501e-05 * v[53] + 0.053745910525322 * v[54] + + v[55]; + y[366] = -0.0288996081799269 * v[46] + 8.60016298247501e-05 * v[43] + 0.053745910525322 * v[49] + + v[48]; + y[368] = -0.0530961975455284 * v[47] + 0.000619045924395323 * v[31] + 0.0927621871232986 * v[50] + + v[51]; + y[369] = -0.0530961975455284 * v[52] + 0.000619045924395323 * v[53] + 0.0927621871232986 * v[54] + + v[55]; + y[370] = -0.0530961975455284 * v[46] + 0.000619045924395323 * v[43] + 0.0927621871232986 * v[49] + + v[48]; + y[372] = -0.046760305762291 * v[47] + 4.18288129672998e-17 * v[31] + 0.0290684439241886 * v[50] + + v[51]; + y[373] = -0.046760305762291 * v[52] + 4.18288129672998e-17 * v[53] + 0.0290684439241886 * v[54] + + v[55]; + y[374] = -0.046760305762291 * v[46] + 4.18288129672998e-17 * v[43] + 0.0290684439241886 * v[49] + + v[48]; + y[376] = -0.0637040734291077 * v[47] + -0.00144436443224549 * v[31] + 0.0478986985981464 * v[50] + + v[51]; + y[377] = -0.0637040734291077 * v[52] + -0.00144436443224549 * v[53] + 0.0478986985981464 * v[54] + + v[55]; + y[378] = -0.0637040734291077 * v[46] + -0.00144436443224549 * v[43] + 0.0478986985981464 * v[49] + + v[48]; + // dependent variables without operations + y[0] = -6.44109725952151e-07; + y[1] = -1.16391277313232e-05; + y[2] = 0.0496443499687567; + y[3] = 0.107271999120712; + y[6] = 0.179449425041044; + y[7] = 0.122019000351429; + y[11] = 0.100000001490116; + y[15] = 0.100000001490116; + y[19] = 0.100000001490116; + y[23] = 0.100000001490116; + y[27] = 0.100000001490116; + y[31] = 0.100000001490116; + y[35] = 0.100000001490116; + y[39] = 0.100000001490116; + y[43] = 0.0770189985632896; + y[47] = 0.0817079991102219; + y[51] = 0.0797109976410866; + y[55] = 0.0832929983735085; + y[59] = 0.0817840024828911; + y[63] = 0.0878330022096634; + y[67] = 0.0887719988822937; + y[71] = 0.0726329982280731; + y[75] = 0.079586997628212; + y[79] = 0.0813139975070953; + y[83] = 0.0526160001754761; + y[87] = 0.0545889995992184; + y[91] = 0.045889999717474; + y[95] = 0.012109000235796; + y[99] = 0.0106359999626875; + y[103] = 0.0114740002900362; + y[107] = 0.0123990001156926; + y[111] = 0.0122360000386834; + y[115] = 0.0108470004051924; + y[119] = 0.0130009995773435; + y[123] = 0.0118150003254414; + y[127] = 0.012601999565959; + y[131] = 0.0133750000968575; + y[135] = 0.0122199999168515; + y[139] = 0.011315000243485; + y[143] = 0.0134969996288419; + y[147] = 0.0131989996880293; + y[151] = 0.0117070004343987; + y[155] = 0.012431999668479; + y[159] = 0.00987400021404028; + y[163] = 0.0122570004314184; + y[167] = 0.00966900028288364; + y[171] = 0.00865000020712614; + y[175] = 0.00920400023460388; + y[179] = 0.0123479999601841; + y[183] = 0.00932999979704618; + y[187] = 0.0117380004376173; + y[191] = 0.00990500021725893; + y[195] = 0.0116910003125668; + y[199] = 0.00942999962717295; + y[203] = 0.0107370000332594; + y[207] = 0.012109000235796; + y[211] = 0.0106359999626875; + y[215] = 0.0114740002900362; + y[219] = 0.0123990001156926; + y[223] = 0.0122360000386834; + y[227] = 0.0108470004051924; + y[231] = 0.0130009995773435; + y[235] = 0.0118150003254414; + y[239] = 0.012601999565959; + y[243] = 0.0133750000968575; + y[247] = 0.0122199999168515; + y[251] = 0.011315000243485; + y[255] = 0.0134969996288419; + y[259] = 0.0131989996880293; + y[263] = 0.0117070004343987; + y[267] = 0.012431999668479; + y[271] = 0.00987400021404028; + y[275] = 0.0122570004314184; + y[279] = 0.00966900028288364; + y[283] = 0.00865000020712614; + y[287] = 0.00920400023460388; + y[291] = 0.0123479999601841; + y[295] = 0.00932999979704618; + y[299] = 0.0117380004376173; + y[303] = 0.00990500021725893; + y[307] = 0.0116910003125668; + y[311] = 0.00942999962717295; + y[315] = 0.0107370000332594; + y[316] = -6.44109718450636e-07; + y[317] = -1.1639127478702e-05; + y[318] = 0.0496443510055542; + y[319] = 0.107271999120712; + y[322] = 0.179449425052665; + y[323] = 0.122019000351429; + y[327] = 0.403739362955093; + y[331] = 0.355899393558502; + y[335] = 0.079586997628212; + y[339] = 0.0813139975070953; + y[343] = 0.0526160001754761; + y[347] = 0.063862532377243; + y[351] = 0.0394577123224735; + y[355] = 0.0347281917929649; + y[359] = 0.0258710160851479; + y[363] = 0.0332425236701965; + y[367] = 0.0394577123224735; + y[371] = 0.0347281917929649; + y[375] = 0.0258710160851479; + y[379] = 0.0332425236701965; + + // + // environment vs. robot collisions + // + + // robotiq_85_right_finger_link + if (sphere_environment_in_collision(environment, y[376], y[377], y[378], y[379])) + { + if (sphere_environment_in_collision(environment, y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_right_knuckle_link + if (sphere_environment_in_collision(environment, y[372], y[373], y[374], y[375])) + { + if (sphere_environment_in_collision(environment, y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_right_finger_tip_link + if (sphere_environment_in_collision(environment, y[368], y[369], y[370], y[371])) + { + if (sphere_environment_in_collision(environment, y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_right_inner_knuckle_link + if (sphere_environment_in_collision(environment, y[364], y[365], y[366], y[367])) + { + if (sphere_environment_in_collision(environment, y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_finger_link + if (sphere_environment_in_collision(environment, y[360], y[361], y[362], y[363])) + { + if (sphere_environment_in_collision(environment, y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_knuckle_link + if (sphere_environment_in_collision(environment, y[356], y[357], y[358], y[359])) + { + if (sphere_environment_in_collision(environment, y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_finger_tip_link + if (sphere_environment_in_collision(environment, y[352], y[353], y[354], y[355])) + { + if (sphere_environment_in_collision(environment, y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_inner_knuckle_link + if (sphere_environment_in_collision(environment, y[348], y[349], y[350], y[351])) + { + if (sphere_environment_in_collision(environment, y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_base_link + if (sphere_environment_in_collision(environment, y[344], y[345], y[346], y[347])) + { + if (sphere_environment_in_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // wrist_3_link + if (sphere_environment_in_collision(environment, y[340], y[341], y[342], y[343])) + { + if (sphere_environment_in_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // wrist_2_link + if (sphere_environment_in_collision(environment, y[336], y[337], y[338], y[339])) + { + if (sphere_environment_in_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // wrist_1_link + if (sphere_environment_in_collision(environment, y[332], y[333], y[334], y[335])) + { + if (sphere_environment_in_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // forearm_link + if (sphere_environment_in_collision(environment, y[328], y[329], y[330], y[331])) + { + if (sphere_environment_in_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // upper_arm_link + if (sphere_environment_in_collision(environment, y[324], y[325], y[326], y[327])) + { + if (sphere_environment_in_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // shoulder_link + if (sphere_environment_in_collision(environment, y[320], y[321], y[322], y[323])) + { + if (sphere_environment_in_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // base_link_inertia + if (sphere_environment_in_collision(environment, y[316], y[317], y[318], y[319])) + { + if (sphere_environment_in_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + } + + // + // robot self-collisions + // + + // base_link_inertia vs. upper_arm_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[324], y[325], y[326], y[327])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[16], y[17], y[18], y[19])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[28], y[29], y[30], y[31])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[32], y[33], y[34], y[35])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[36], y[37], y[38], y[39])) + { + return false; + } + } + + // base_link_inertia vs. forearm_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[328], y[329], y[330], y[331])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + return false; + } + } + + // base_link_inertia vs. wrist_1_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[332], y[333], y[334], y[335])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // base_link_inertia vs. wrist_2_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // base_link_inertia vs. wrist_3_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // shoulder_link vs. forearm_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[328], y[329], y[330], y[331])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + return false; + } + } + + // shoulder_link vs. wrist_1_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[332], y[333], y[334], y[335])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // shoulder_link vs. wrist_2_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // shoulder_link vs. wrist_3_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // upper_arm_link vs. wrist_1_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[332], y[333], y[334], y[335])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // upper_arm_link vs. wrist_2_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // upper_arm_link vs. wrist_3_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // forearm_link vs. wrist_2_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // forearm_link vs. wrist_3_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + return true; + } + + template + inline static bool fkcc_attach( + const vamp::collision::Environment> &environment, + const ConfigurationBlock &x) noexcept + { + std::array, 56> v; + std::array, 392> y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -1. * v[0] + -1.22464679914735e-16 * v[1]; + v[3] = -v[1]; + v[4] = -1. * v[3] + -1.22464679914735e-16 * v[0]; + y[4] = -0.000288299505126466 * v[2] + -0.00873530766096221 * v[4]; + v[1] = 1.22464679914735e-16 * v[0] + -1. * v[1]; + v[3] = 1.22464679914735e-16 * v[3] + -1. * v[0]; + y[5] = -0.000288299505126466 * v[1] + -0.00873530766096221 * v[3]; + v[0] = cos(x[1]); + v[5] = sin(x[1]); + v[6] = -2.05103489747671e-10 * v[5]; + v[7] = v[2] * v[0] + v[4] * v[6]; + v[8] = -v[5]; + v[9] = -2.05103489747671e-10 * v[0]; + v[10] = v[2] * v[8] + v[4] * v[9]; + v[11] = -1. * v[4]; + y[8] = -0.607041969037533 * v[7] + 1.42804932594299e-06 * v[10] + 0.16623906538415 * v[11]; + v[6] = v[1] * v[0] + v[3] * v[6]; + v[9] = v[1] * v[8] + v[3] * v[9]; + v[8] = -1. * v[3]; + y[9] = -0.607041969037533 * v[6] + 1.42804932594299e-06 * v[9] + 0.16623906538415 * v[8]; + y[10] = 0.1807 + -0.607041969037533 * v[5] + -3.40962124426803e-11 + 1.42804932594299e-06 * v[0]; + y[12] = 0.000413030962467198 * v[7] + 5.42804932594299e-06 * v[10] + 0.17160506538415 * v[11]; + y[13] = 0.000413030962467198 * v[6] + 5.42804932594299e-06 * v[9] + 0.17160506538415 * v[8]; + y[14] = + 0.1807 + 0.000413030962467198 * v[5] + -3.51967977686664e-11 + 5.42804932594299e-06 * v[0]; + y[16] = -0.516884969037533 * v[7] + 3.42804932594299e-06 * v[10] + 0.16899706538415 * v[11]; + y[17] = -0.516884969037533 * v[6] + 3.42804932594299e-06 * v[9] + 0.16899706538415 * v[8]; + y[18] = 0.1807 + -0.516884969037533 * v[5] + -3.46618878674044e-11 + 3.42804932594299e-06 * v[0]; + y[20] = -0.423410969037533 * v[7] + 9.42804932594299e-06 * v[10] + 0.17053706538415 * v[11]; + y[21] = -0.423410969037533 * v[6] + 9.42804932594299e-06 * v[9] + 0.17053706538415 * v[8]; + y[22] = 0.1807 + -0.423410969037533 * v[5] + -3.49777472416158e-11 + 9.42804932594299e-06 * v[0]; + y[24] = -0.328266969037533 * v[7] + 1.2428049325943e-05 * v[10] + 0.17244706538415 * v[11]; + y[25] = -0.328266969037533 * v[6] + 1.2428049325943e-05 * v[9] + 0.17244706538415 * v[8]; + y[26] = 0.1807 + -0.328266969037533 * v[5] + -3.53694949070339e-11 + 1.2428049325943e-05 * v[0]; + y[28] = -0.225282969037533 * v[7] + 1.8428049325943e-05 * v[10] + 0.17491006538415 * v[11]; + y[29] = -0.225282969037533 * v[6] + 1.8428049325943e-05 * v[9] + 0.17491006538415 * v[8]; + y[30] = 0.1807 + -0.225282969037533 * v[5] + -3.58746648022824e-11 + 1.8428049325943e-05 * v[0]; + y[32] = -0.129197969037533 * v[7] + 2.6428049325943e-05 * v[10] + 0.17046706538415 * v[11]; + y[33] = -0.129197969037533 * v[6] + 2.6428049325943e-05 * v[9] + 0.17046706538415 * v[8]; + y[34] = 0.1807 + -0.129197969037533 * v[5] + -3.49633899973335e-11 + 2.6428049325943e-05 * v[0]; + y[36] = -0.0292619690375328 * v[7] + 6.42804932594299e-06 * v[10] + 0.17915506538415 * v[11]; + y[37] = -0.0292619690375328 * v[6] + 6.42804932594299e-06 * v[9] + 0.17915506538415 * v[8]; + y[38] = 0.1807 + -0.0292619690375328 * v[5] + -3.67453291162613e-11 + 6.42804932594299e-06 * v[0]; + v[12] = cos(x[2]); + v[13] = sin(x[2]); + v[14] = v[7] * v[12] + v[10] * v[13]; + v[15] = -v[13]; + v[16] = v[7] * v[15] + v[10] * v[12]; + v[17] = -0.6127 * v[7]; + y[40] = -0.563005578970909 * v[14] + 6.19744038581848e-06 * v[16] + 0.0494461657419205 * v[11] + + v[17]; + v[18] = v[6] * v[12] + v[9] * v[13]; + v[19] = v[6] * v[15] + v[9] * v[12]; + v[20] = -0.6127 * v[6]; + y[41] = + -0.563005578970909 * v[18] + 6.19744038581848e-06 * v[19] + 0.0494461657419205 * v[8] + v[20]; + v[13] = v[5] * v[12] + v[0] * v[13]; + v[15] = v[5] * v[15] + v[0] * v[12]; + v[12] = 0.1807 + -0.6127 * v[5]; + y[42] = -0.563005578970909 * v[13] + -1.01415811483096e-11 + 6.19744038581848e-06 * v[15] + v[12]; + y[44] = -0.489168578970909 * v[14] + -8.02559614181519e-07 * v[16] + 0.0491121657419205 * v[11] + + v[17]; + y[45] = -0.489168578970909 * v[18] + -8.02559614181519e-07 * v[19] + 0.0491121657419205 * v[8] + + v[20]; + y[46] = + -0.489168578970909 * v[13] + -1.00730765827339e-11 + -8.02559614181519e-07 * v[15] + v[12]; + y[48] = -0.406023578970909 * v[14] + -5.80255961418152e-06 * v[16] + 0.0465401657419205 * v[11] + + v[17]; + y[49] = -0.406023578970909 * v[18] + -5.80255961418152e-06 * v[19] + 0.0465401657419205 * v[8] + + v[20]; + y[50] = + -0.406023578970909 * v[13] + -9.54555040710291e-12 + -5.80255961418152e-06 * v[15] + v[12]; + y[52] = -0.331356578970909 * v[14] + -1.18025596141815e-05 * v[16] + 0.0518921657419205 * v[11] + + v[17]; + y[53] = -0.331356578970909 * v[18] + -1.18025596141815e-05 * v[19] + 0.0518921657419205 * v[8] + + v[20]; + y[54] = + -0.331356578970909 * v[13] + -1.06432642842324e-11 + -1.18025596141815e-05 * v[15] + v[12]; + y[56] = -0.252682578970909 * v[14] + -1.88025596141815e-05 * v[16] + 0.0485491657419205 * v[11] + + v[17]; + y[57] = -0.252682578970909 * v[18] + -1.88025596141815e-05 * v[19] + 0.0485491657419205 * v[8] + + v[20]; + y[58] = + -0.252682578970909 * v[13] + -9.95760331800598e-12 + -1.88025596141815e-05 * v[15] + v[12]; + y[60] = -0.162805578970909 * v[14] + 0.000842197440385818 * v[16] + 0.0465861657419205 * v[11] + + v[17]; + y[61] = + -0.162805578970909 * v[18] + 0.000842197440385818 * v[19] + 0.0465861657419205 * v[8] + v[20]; + y[62] = -0.162805578970909 * v[13] + -9.5549851676313e-12 + 0.000842197440385818 * v[15] + v[12]; + y[64] = -0.0761155789709091 * v[14] + -0.000181802559614182 * v[16] + 0.0427021657419205 * v[11] + + v[17]; + y[65] = -0.0761155789709091 * v[18] + -0.000181802559614182 * v[19] + 0.0427021657419205 * v[8] + + v[20]; + y[66] = + -0.0761155789709091 * v[13] + -8.75836321345134e-12 + -0.000181802559614182 * v[15] + v[12]; + y[68] = -0.000915578970909103 * v[14] + 0.000353197440385818 * v[16] + + 0.0574301657419205 * v[11] + v[17]; + y[69] = -0.000915578970909103 * v[18] + 0.000353197440385818 * v[19] + 0.0574301657419205 * v[8] + + v[20]; + y[70] = + -0.000915578970909103 * v[13] + -1.1779127410455e-11 + 0.000353197440385818 * v[15] + v[12]; + v[21] = cos(x[3]); + v[22] = sin(x[3]); + v[23] = v[14] * v[21] + v[16] * v[22]; + v[24] = -v[22]; + v[25] = v[14] * v[24] + v[16] * v[21]; + v[26] = v[17] + -0.57155 * v[14] + 0.17415 * v[11]; + y[72] = -3.24659049510956e-06 * v[23] + -0.0088331080224514 * v[25] + + -0.0100402649126053 * v[11] + v[26]; + v[27] = v[18] * v[21] + v[19] * v[22]; + v[28] = v[18] * v[24] + v[19] * v[21]; + v[29] = v[20] + -0.57155 * v[18] + 0.17415 * v[8]; + y[73] = -3.24659049510956e-06 * v[27] + -0.0088331080224514 * v[28] + -0.0100402649126053 * v[8] + + v[29]; + v[22] = v[13] * v[21] + v[15] * v[22]; + v[24] = v[13] * v[24] + v[15] * v[21]; + v[21] = v[12] + -3.57187727395569e-11 + -0.57155 * v[13]; + y[74] = + -3.24659049510956e-06 * v[22] + 2.05929337156644e-12 + -0.0088331080224514 * v[24] + v[21]; + v[30] = cos(x[4]); + v[31] = sin(x[4]); + v[32] = -2.05103489747671e-10 * v[31]; + v[33] = v[23] * v[30] + v[25] * v[32] + v[11] * v[31]; + v[34] = -v[31]; + v[35] = -2.05103489747671e-10 * v[30]; + v[36] = v[23] * v[34] + v[25] * v[35] + v[11] * v[30]; + v[37] = -1. * v[25] + -2.05103489747671e-10 * v[11]; + v[38] = v[26] + -0.11985 * v[25] + -2.45816459075624e-11 * v[11]; + y[76] = -0.000313147310428718 * v[33] + 0.00790893117351034 * v[36] + + -0.0025966766253855 * v[37] + v[38]; + v[39] = v[27] * v[30] + v[28] * v[32] + v[8] * v[31]; + v[40] = v[27] * v[34] + v[28] * v[35] + v[8] * v[30]; + v[41] = -1. * v[28] + -2.05103489747671e-10 * v[8]; + v[42] = v[29] + -0.11985 * v[28] + -2.45816459075624e-11 * v[8]; + y[77] = -0.000313147310428718 * v[39] + 0.00790893117351034 * v[40] + + -0.0025966766253855 * v[41] + v[42]; + v[32] = v[22] * v[30] + v[24] * v[32] + -2.05103489747671e-10 * v[31]; + v[35] = v[22] * v[34] + v[24] * v[35] + -2.05103489747671e-10 * v[30]; + v[34] = 4.2067441506673e-20 + -1. * v[24]; + v[30] = v[21] + 5.04178135938262e-21 + -0.11985 * v[24]; + y[78] = -0.000313147310428718 * v[32] + 0.00790893117351034 * v[35] + + -0.0025966766253855 * v[34] + v[30]; + v[31] = cos(x[5]); + v[43] = sin(x[5]); + v[44] = v[31] + -1.22464679939853e-16 * v[43]; + v[45] = -1.22464679914735e-16 * v[31] + -2.05103489747671e-10 * v[43]; + v[46] = -1.22464679914735e-16 * v[31] + -1. * v[43]; + v[47] = v[33] * v[44] + v[36] * v[45] + v[37] * v[46]; + v[43] = -v[43]; + v[48] = v[43] + -1.22464679939853e-16 * v[31]; + v[49] = -1.22464679914735e-16 * v[43] + -2.05103489747671e-10 * v[31]; + v[43] = -1.22464679914735e-16 * v[43] + -1. * v[31]; + v[31] = v[33] * v[48] + v[36] * v[49] + v[37] * v[43]; + v[50] = 1.22464679889617e-16 * v[33] + v[36] + -2.05103489747671e-10 * v[37]; + v[51] = v[38] + 0.11655 * v[36] + -2.39048045934618e-11 * v[37]; + y[80] = -0.00017564292037487 * v[47] + -0.00074144667053222 * v[31] + + -0.0244805331659317 * v[50] + v[51]; + v[52] = v[39] * v[44] + v[40] * v[45] + v[41] * v[46]; + v[53] = v[39] * v[48] + v[40] * v[49] + v[41] * v[43]; + v[54] = 1.22464679889617e-16 * v[39] + v[40] + -2.05103489747671e-10 * v[41]; + v[55] = v[42] + 0.11655 * v[40] + -2.39048045934618e-11 * v[41]; + y[81] = -0.00017564292037487 * v[52] + -0.00074144667053222 * v[53] + + -0.0244805331659317 * v[54] + v[55]; + v[46] = v[32] * v[44] + v[35] * v[45] + v[34] * v[46]; + v[43] = v[32] * v[48] + v[35] * v[49] + v[34] * v[43]; + v[49] = 1.22464679889617e-16 * v[32] + v[35] + -2.05103489747671e-10 * v[34]; + v[48] = v[30] + 0.11655 * v[35] + -2.39048045934618e-11 * v[34]; + y[82] = -0.00017564292037487 * v[46] + -0.00074144667053222 * v[43] + + -0.0244805331659317 * v[49] + v[48]; + y[84] = 0.00107514814060296 * v[47] + 0.000423320496660516 * v[31] + + -0.00408291128903037 * v[50] + v[51]; + y[85] = 0.00107514814060296 * v[52] + 0.000423320496660516 * v[53] + + -0.00408291128903037 * v[54] + v[55]; + y[86] = 0.00107514814060296 * v[46] + 0.000423320496660516 * v[43] + + -0.00408291128903037 * v[49] + v[48]; + y[88] = -0.000199851859397042 * v[47] + 7.63204966605162e-05 * v[31] + + 0.0231310887109696 * v[50] + v[51]; + y[89] = -0.000199851859397042 * v[52] + 7.63204966605162e-05 * v[53] + + 0.0231310887109696 * v[54] + v[55]; + y[90] = -0.000199851859397042 * v[46] + 7.63204966605162e-05 * v[43] + + 0.0231310887109696 * v[49] + v[48]; + y[92] = + 0.0444889418603304 * v[47] + 0.00804466059900797 * v[31] + 0.0746938738375369 * v[50] + v[51]; + y[93] = + 0.0444889418603304 * v[52] + 0.00804466059900797 * v[53] + 0.0746938738375369 * v[54] + v[55]; + y[94] = + 0.0444889418603304 * v[46] + 0.00804466059900797 * v[43] + 0.0746938738375369 * v[49] + v[48]; + y[96] = + 0.0143949418603304 * v[47] + -0.015607339400992 * v[31] + 0.0342678738375368 * v[50] + v[51]; + y[97] = + 0.0143949418603304 * v[52] + -0.015607339400992 * v[53] + 0.0342678738375368 * v[54] + v[55]; + y[98] = + 0.0143949418603304 * v[46] + -0.015607339400992 * v[43] + 0.0342678738375368 * v[49] + v[48]; + y[100] = 0.0450229418603304 * v[47] + -0.00814133940099203 * v[31] + 0.0747888738375369 * v[50] + + v[51]; + y[101] = 0.0450229418603304 * v[52] + -0.00814133940099203 * v[53] + 0.0747888738375369 * v[54] + + v[55]; + y[102] = 0.0450229418603304 * v[46] + -0.00814133940099203 * v[43] + 0.0747888738375369 * v[49] + + v[48]; + y[104] = + 0.0349399418603304 * v[47] + 0.00851466059900797 * v[31] + 0.0614948738375369 * v[50] + v[51]; + y[105] = + 0.0349399418603304 * v[52] + 0.00851466059900797 * v[53] + 0.0614948738375369 * v[54] + v[55]; + y[106] = + 0.0349399418603304 * v[46] + 0.00851466059900797 * v[43] + 0.0614948738375369 * v[49] + v[48]; + y[108] = + 0.0155629418603304 * v[47] + 0.015429660599008 * v[31] + 0.0357898738375369 * v[50] + v[51]; + y[109] = + 0.0155629418603304 * v[52] + 0.015429660599008 * v[53] + 0.0357898738375369 * v[54] + v[55]; + y[110] = + 0.0155629418603304 * v[46] + 0.015429660599008 * v[43] + 0.0357898738375369 * v[49] + v[48]; + y[112] = + 0.0231689418603304 * v[47] + -0.014684339400992 * v[31] + 0.0463518738375369 * v[50] + v[51]; + y[113] = + 0.0231689418603304 * v[52] + -0.014684339400992 * v[53] + 0.0463518738375369 * v[54] + v[55]; + y[114] = + 0.0231689418603304 * v[46] + -0.014684339400992 * v[43] + 0.0463518738375369 * v[49] + v[48]; + y[116] = + 0.0331909418603304 * v[47] + -0.011181339400992 * v[31] + 0.0599398738375369 * v[50] + v[51]; + y[117] = + 0.0331909418603304 * v[52] + -0.011181339400992 * v[53] + 0.0599398738375369 * v[54] + v[55]; + y[118] = + 0.0331909418603304 * v[46] + -0.011181339400992 * v[43] + 0.0599398738375369 * v[49] + v[48]; + y[120] = + 0.0263189418603304 * v[47] + 0.013959660599008 * v[31] + 0.0511568738375369 * v[50] + v[51]; + y[121] = + 0.0263189418603304 * v[52] + 0.013959660599008 * v[53] + 0.0511568738375369 * v[54] + v[55]; + y[122] = + 0.0263189418603304 * v[46] + 0.013959660599008 * v[43] + 0.0511568738375369 * v[49] + v[48]; + y[124] = 0.0623787980982067 * v[47] + -0.000234199006115228 * v[31] + 0.0721059691962172 * v[50] + + v[51]; + y[125] = 0.0623787980982067 * v[52] + -0.000234199006115228 * v[53] + 0.0721059691962172 * v[54] + + v[55]; + y[126] = 0.0623787980982067 * v[46] + -0.000234199006115228 * v[43] + 0.0721059691962172 * v[49] + + v[48]; + y[128] = 0.0487957980982067 * v[47] + -4.01990061152315e-05 * v[31] + 0.0788669691962172 * v[50] + + v[51]; + y[129] = 0.0487957980982067 * v[52] + -4.01990061152315e-05 * v[53] + 0.0788669691962172 * v[54] + + v[55]; + y[130] = 0.0487957980982067 * v[46] + -4.01990061152315e-05 * v[43] + 0.0788669691962172 * v[49] + + v[48]; + y[132] = + 0.0445177980982067 * v[47] + 0.00426880099388477 * v[31] + 0.112418969196217 * v[50] + v[51]; + y[133] = + 0.0445177980982067 * v[52] + 0.00426880099388477 * v[53] + 0.112418969196217 * v[54] + v[55]; + y[134] = + 0.0445177980982067 * v[46] + 0.00426880099388477 * v[43] + 0.112418969196217 * v[49] + v[48]; + y[136] = + 0.0445317980982067 * v[47] + -0.00397219900611523 * v[31] + 0.113735969196217 * v[50] + v[51]; + y[137] = + 0.0445317980982067 * v[52] + -0.00397219900611523 * v[53] + 0.113735969196217 * v[54] + v[55]; + y[138] = + 0.0445317980982067 * v[46] + -0.00397219900611523 * v[43] + 0.113735969196217 * v[49] + v[48]; + y[140] = + 0.0461197980982067 * v[47] + 0.000114800993884768 * v[31] + 0.103681969196217 * v[50] + v[51]; + y[141] = + 0.0461197980982067 * v[52] + 0.000114800993884768 * v[53] + 0.103681969196217 * v[54] + v[55]; + y[142] = + 0.0461197980982067 * v[46] + 0.000114800993884768 * v[43] + 0.103681969196217 * v[49] + v[48]; + y[144] = 0.0460907980982067 * v[47] + -0.00245419900611523 * v[31] + 0.0926159691962172 * v[50] + + v[51]; + y[145] = 0.0460907980982067 * v[52] + -0.00245419900611523 * v[53] + 0.0926159691962172 * v[54] + + v[55]; + y[146] = 0.0460907980982067 * v[46] + -0.00245419900611523 * v[43] + 0.0926159691962172 * v[49] + + v[48]; + y[148] = + 0.0441217980982067 * v[47] + 0.00562580099388477 * v[31] + 0.0930719691962172 * v[50] + v[51]; + y[149] = + 0.0441217980982067 * v[52] + 0.00562580099388477 * v[53] + 0.0930719691962172 * v[54] + v[55]; + y[150] = + 0.0441217980982067 * v[46] + 0.00562580099388477 * v[43] + 0.0930719691962172 * v[49] + v[48]; + y[152] = 0.0552620541990758 * v[47] + 1.22706409919795e-17 * v[31] + 0.0331275379870581 * v[50] + + v[51]; + y[153] = 0.0552620541990758 * v[52] + 1.22706409919795e-17 * v[53] + 0.0331275379870581 * v[54] + + v[55]; + y[154] = 0.0552620541990758 * v[46] + 1.22706409919795e-17 * v[43] + 0.0331275379870581 * v[49] + + v[48]; + y[156] = 0.0311880541990758 * v[47] + 6.92513917301426e-18 * v[31] + 0.0254065379870581 * v[50] + + v[51]; + y[157] = 0.0311880541990758 * v[52] + 6.92513917301426e-18 * v[53] + 0.0254065379870581 * v[54] + + v[55]; + y[158] = 0.0311880541990758 * v[46] + 6.92513917301426e-18 * v[43] + 0.0254065379870581 * v[49] + + v[48]; + y[160] = 0.0585960541990758 * v[47] + 1.30109377047995e-17 * v[31] + 0.0278055379870581 * v[50] + + v[51]; + y[161] = 0.0585960541990758 * v[52] + 1.30109377047995e-17 * v[53] + 0.0278055379870581 * v[54] + + v[55]; + y[162] = 0.0585960541990758 * v[46] + 1.30109377047995e-17 * v[43] + 0.0278055379870581 * v[49] + + v[48]; + y[164] = 0.0453500541990758 * v[47] + 1.00697348679625e-17 * v[31] + 0.0262125379870581 * v[50] + + v[51]; + y[165] = 0.0453500541990758 * v[52] + 1.00697348679625e-17 * v[53] + 0.0262125379870581 * v[54] + + v[55]; + y[166] = 0.0453500541990758 * v[46] + 1.00697348679625e-17 * v[43] + 0.0262125379870581 * v[49] + + v[48]; + y[168] = 0.0635240541990758 * v[47] + 1.41051735178701e-17 * v[31] + 0.0330105379870581 * v[50] + + v[51]; + y[169] = 0.0635240541990758 * v[52] + 1.41051735178701e-17 * v[53] + 0.0330105379870581 * v[54] + + v[55]; + y[170] = 0.0635240541990758 * v[46] + 1.41051735178701e-17 * v[43] + 0.0330105379870581 * v[49] + + v[48]; + y[172] = + 0.0651264623038461 * v[47] + 0.00851800000000001 * v[31] + 0.070495068913942 * v[50] + v[51]; + y[173] = + 0.0651264623038461 * v[52] + 0.00851800000000001 * v[53] + 0.070495068913942 * v[54] + v[55]; + y[174] = + 0.0651264623038461 * v[46] + 0.00851800000000001 * v[43] + 0.070495068913942 * v[49] + v[48]; + y[176] = + 0.0643414623038461 * v[47] + 0.00624200000000001 * v[31] + 0.055076068913942 * v[50] + v[51]; + y[177] = + 0.0643414623038461 * v[52] + 0.00624200000000001 * v[53] + 0.055076068913942 * v[54] + v[55]; + y[178] = + 0.0643414623038461 * v[46] + 0.00624200000000001 * v[43] + 0.055076068913942 * v[49] + v[48]; + y[180] = + 0.0649744623038461 * v[47] + -0.00847699999999999 * v[31] + 0.069285068913942 * v[50] + v[51]; + y[181] = + 0.0649744623038461 * v[52] + -0.00847699999999999 * v[53] + 0.069285068913942 * v[54] + v[55]; + y[182] = + 0.0649744623038461 * v[46] + -0.00847699999999999 * v[43] + 0.069285068913942 * v[49] + v[48]; + y[184] = + 0.0643704623038461 * v[47] + -0.00630099999999999 * v[31] + 0.054502068913942 * v[50] + v[51]; + y[185] = + 0.0643704623038461 * v[52] + -0.00630099999999999 * v[53] + 0.054502068913942 * v[54] + v[55]; + y[186] = + 0.0643704623038461 * v[46] + -0.00630099999999999 * v[43] + 0.054502068913942 * v[49] + v[48]; + y[188] = + 0.0633094623038461 * v[47] + -0.00602399999999999 * v[31] + 0.040743068913942 * v[50] + v[51]; + y[189] = + 0.0633094623038461 * v[52] + -0.00602399999999999 * v[53] + 0.040743068913942 * v[54] + v[55]; + y[190] = + 0.0633094623038461 * v[46] + -0.00602399999999999 * v[43] + 0.040743068913942 * v[49] + v[48]; + y[192] = + 0.0631514623038461 * v[47] + 0.00523600000000001 * v[31] + 0.037942068913942 * v[50] + v[51]; + y[193] = + 0.0631514623038461 * v[52] + 0.00523600000000001 * v[53] + 0.037942068913942 * v[54] + v[55]; + y[194] = + 0.0631514623038461 * v[46] + 0.00523600000000001 * v[43] + 0.037942068913942 * v[49] + v[48]; + y[196] = + 0.0622994623038461 * v[47] + 0.00742700000000001 * v[31] + 0.024559068913942 * v[50] + v[51]; + y[197] = + 0.0622994623038461 * v[52] + 0.00742700000000001 * v[53] + 0.024559068913942 * v[54] + v[55]; + y[198] = + 0.0622994623038461 * v[46] + 0.00742700000000001 * v[43] + 0.024559068913942 * v[49] + v[48]; + y[200] = + 0.0625164623038461 * v[47] + -0.00732999999999999 * v[31] + 0.027526068913942 * v[50] + v[51]; + y[201] = + 0.0625164623038461 * v[52] + -0.00732999999999999 * v[53] + 0.027526068913942 * v[54] + v[55]; + y[202] = + 0.0625164623038461 * v[46] + -0.00732999999999999 * v[43] + 0.027526068913942 * v[49] + v[48]; + y[204] = -0.0444889418600303 * v[47] + -0.00804466059900787 * v[31] + 0.074693873837609 * v[50] + + v[51]; + y[205] = -0.0444889418600303 * v[52] + -0.00804466059900787 * v[53] + 0.074693873837609 * v[54] + + v[55]; + y[206] = -0.0444889418600303 * v[46] + -0.00804466059900787 * v[43] + 0.074693873837609 * v[49] + + v[48]; + y[208] = + -0.0143949418600302 * v[47] + 0.015607339400992 * v[31] + 0.0342678738376091 * v[50] + v[51]; + y[209] = + -0.0143949418600302 * v[52] + 0.015607339400992 * v[53] + 0.0342678738376091 * v[54] + v[55]; + y[210] = + -0.0143949418600302 * v[46] + 0.015607339400992 * v[43] + 0.0342678738376091 * v[49] + v[48]; + y[212] = + -0.0450229418600302 * v[47] + 0.00814133940099214 * v[31] + 0.074788873837609 * v[50] + v[51]; + y[213] = + -0.0450229418600302 * v[52] + 0.00814133940099214 * v[53] + 0.074788873837609 * v[54] + v[55]; + y[214] = + -0.0450229418600302 * v[46] + 0.00814133940099214 * v[43] + 0.074788873837609 * v[49] + v[48]; + y[216] = -0.0349399418600303 * v[47] + -0.00851466059900789 * v[31] + 0.0614948738376091 * v[50] + + v[51]; + y[217] = -0.0349399418600303 * v[52] + -0.00851466059900789 * v[53] + 0.0614948738376091 * v[54] + + v[55]; + y[218] = -0.0349399418600303 * v[46] + -0.00851466059900789 * v[43] + 0.0614948738376091 * v[49] + + v[48]; + y[220] = + -0.0155629418600303 * v[47] + -0.015429660599008 * v[31] + 0.0357898738376091 * v[50] + v[51]; + y[221] = + -0.0155629418600303 * v[52] + -0.015429660599008 * v[53] + 0.0357898738376091 * v[54] + v[55]; + y[222] = + -0.0155629418600303 * v[46] + -0.015429660599008 * v[43] + 0.0357898738376091 * v[49] + v[48]; + y[224] = + -0.0231689418600302 * v[47] + 0.0146843394009921 * v[31] + 0.0463518738376091 * v[50] + v[51]; + y[225] = + -0.0231689418600302 * v[52] + 0.0146843394009921 * v[53] + 0.0463518738376091 * v[54] + v[55]; + y[226] = + -0.0231689418600302 * v[46] + 0.0146843394009921 * v[43] + 0.0463518738376091 * v[49] + v[48]; + y[228] = + -0.0331909418600302 * v[47] + 0.0111813394009921 * v[31] + 0.0599398738376091 * v[50] + v[51]; + y[229] = + -0.0331909418600302 * v[52] + 0.0111813394009921 * v[53] + 0.0599398738376091 * v[54] + v[55]; + y[230] = + -0.0331909418600302 * v[46] + 0.0111813394009921 * v[43] + 0.0599398738376091 * v[49] + v[48]; + y[232] = -0.0263189418600303 * v[47] + -0.0139596605990079 * v[31] + 0.0511568738376091 * v[50] + + v[51]; + y[233] = -0.0263189418600303 * v[52] + -0.0139596605990079 * v[53] + 0.0511568738376091 * v[54] + + v[55]; + y[234] = -0.0263189418600303 * v[46] + -0.0139596605990079 * v[43] + 0.0511568738376091 * v[49] + + v[48]; + y[236] = -0.0618995347823531 * v[47] + 0.000234199006115388 * v[31] + 0.0724663376686607 * v[50] + + v[51]; + y[237] = -0.0618995347823531 * v[52] + 0.000234199006115388 * v[53] + 0.0724663376686607 * v[54] + + v[55]; + y[238] = -0.0618995347823531 * v[46] + 0.000234199006115388 * v[43] + 0.0724663376686607 * v[49] + + v[48]; + y[240] = -0.0483165347823531 * v[47] + 4.01990061153467e-05 * v[31] + 0.0792273376686607 * v[50] + + v[51]; + y[241] = -0.0483165347823531 * v[52] + 4.01990061153467e-05 * v[53] + 0.0792273376686607 * v[54] + + v[55]; + y[242] = -0.0483165347823531 * v[46] + 4.01990061153467e-05 * v[43] + 0.0792273376686607 * v[49] + + v[48]; + y[244] = -0.0440385347823531 * v[47] + -0.00426880099388467 * v[31] + 0.112779337668661 * v[50] + + v[51]; + y[245] = -0.0440385347823531 * v[52] + -0.00426880099388467 * v[53] + 0.112779337668661 * v[54] + + v[55]; + y[246] = -0.0440385347823531 * v[46] + -0.00426880099388467 * v[43] + 0.112779337668661 * v[49] + + v[48]; + y[248] = + -0.0440525347823531 * v[47] + 0.00397219900611533 * v[31] + 0.114096337668661 * v[50] + v[51]; + y[249] = + -0.0440525347823531 * v[52] + 0.00397219900611533 * v[53] + 0.114096337668661 * v[54] + v[55]; + y[250] = + -0.0440525347823531 * v[46] + 0.00397219900611533 * v[43] + 0.114096337668661 * v[49] + v[48]; + y[252] = -0.0456405347823531 * v[47] + -0.000114800993884661 * v[31] + 0.104042337668661 * v[50] + + v[51]; + y[253] = -0.0456405347823531 * v[52] + -0.000114800993884661 * v[53] + 0.104042337668661 * v[54] + + v[55]; + y[254] = -0.0456405347823531 * v[46] + -0.000114800993884661 * v[43] + 0.104042337668661 * v[49] + + v[48]; + y[256] = -0.0456115347823531 * v[47] + 0.00245419900611534 * v[31] + 0.0929763376686607 * v[50] + + v[51]; + y[257] = -0.0456115347823531 * v[52] + 0.00245419900611534 * v[53] + 0.0929763376686607 * v[54] + + v[55]; + y[258] = -0.0456115347823531 * v[46] + 0.00245419900611534 * v[43] + 0.0929763376686607 * v[49] + + v[48]; + y[260] = -0.0436425347823531 * v[47] + -0.00562580099388467 * v[31] + 0.0934323376686607 * v[50] + + v[51]; + y[261] = -0.0436425347823531 * v[52] + -0.00562580099388467 * v[53] + 0.0934323376686607 * v[54] + + v[55]; + y[262] = -0.0436425347823531 * v[46] + -0.00562580099388467 * v[43] + 0.0934323376686607 * v[49] + + v[48]; + y[264] = -0.0552620541989112 * v[47] + 6.74109569768114e-17 * v[31] + 0.0331275379870581 * v[50] + + v[51]; + y[265] = -0.0552620541989112 * v[52] + 6.74109569768114e-17 * v[53] + 0.0331275379870581 * v[54] + + v[55]; + y[266] = -0.0552620541989112 * v[46] + 6.74109569768114e-17 * v[43] + 0.0331275379870581 * v[49] + + v[48]; + y[268] = -0.0311880541989112 * v[47] + -5.02878137400361e-18 * v[31] + + 0.0254065379870581 * v[50] + v[51]; + y[269] = -0.0311880541989112 * v[52] + -5.02878137400361e-18 * v[53] + + 0.0254065379870581 * v[54] + v[55]; + y[270] = -0.0311880541989112 * v[46] + -5.02878137400361e-18 * v[43] + + 0.0254065379870581 * v[49] + v[48]; + y[272] = -0.0585960541989112 * v[47] + 7.74431114863078e-17 * v[31] + 0.0278055379870581 * v[50] + + v[51]; + y[273] = -0.0585960541989112 * v[52] + 7.74431114863078e-17 * v[53] + 0.0278055379870581 * v[54] + + v[55]; + y[274] = -0.0585960541989112 * v[46] + 7.74431114863078e-17 * v[43] + 0.0278055379870581 * v[49] + + v[48]; + y[276] = -0.0453500541989112 * v[47] + 3.75853074572767e-17 * v[31] + 0.0262125379870581 * v[50] + + v[51]; + y[277] = -0.0453500541989112 * v[52] + 3.75853074572767e-17 * v[53] + 0.0262125379870581 * v[54] + + v[55]; + y[278] = -0.0453500541989112 * v[46] + 3.75853074572767e-17 * v[43] + 0.0262125379870581 * v[49] + + v[48]; + y[280] = -0.0635240541989112 * v[47] + 9.22716829988448e-17 * v[31] + 0.0330105379870581 * v[50] + + v[51]; + y[281] = -0.0635240541989112 * v[52] + 9.22716829988448e-17 * v[53] + 0.0330105379870581 * v[54] + + v[55]; + y[282] = -0.0635240541989112 * v[46] + 9.22716829988448e-17 * v[43] + 0.0330105379870581 * v[49] + + v[48]; + y[284] = -0.0651450090137519 * v[47] + -0.0085179999999999 * v[31] + 0.0708276761757193 * v[50] + + v[51]; + y[285] = -0.0651450090137519 * v[52] + -0.0085179999999999 * v[53] + 0.0708276761757193 * v[54] + + v[55]; + y[286] = -0.0651450090137519 * v[46] + -0.0085179999999999 * v[43] + 0.0708276761757193 * v[49] + + v[48]; + y[288] = -0.0643600090137519 * v[47] + -0.00624199999999991 * v[31] + 0.0554086761757193 * v[50] + + v[51]; + y[289] = -0.0643600090137519 * v[52] + -0.00624199999999991 * v[53] + 0.0554086761757193 * v[54] + + v[55]; + y[290] = -0.0643600090137519 * v[46] + -0.00624199999999991 * v[43] + 0.0554086761757193 * v[49] + + v[48]; + y[292] = + -0.0649930090137518 * v[47] + 0.0084770000000001 * v[31] + 0.0696176761757193 * v[50] + v[51]; + y[293] = + -0.0649930090137518 * v[52] + 0.0084770000000001 * v[53] + 0.0696176761757193 * v[54] + v[55]; + y[294] = + -0.0649930090137518 * v[46] + 0.0084770000000001 * v[43] + 0.0696176761757193 * v[49] + v[48]; + y[296] = -0.0643890090137518 * v[47] + 0.00630100000000009 * v[31] + 0.0548346761757193 * v[50] + + v[51]; + y[297] = -0.0643890090137518 * v[52] + 0.00630100000000009 * v[53] + 0.0548346761757193 * v[54] + + v[55]; + y[298] = -0.0643890090137518 * v[46] + 0.00630100000000009 * v[43] + 0.0548346761757193 * v[49] + + v[48]; + y[300] = -0.0633280090137518 * v[47] + 0.00602400000000009 * v[31] + 0.0410756761757193 * v[50] + + v[51]; + y[301] = -0.0633280090137518 * v[52] + 0.00602400000000009 * v[53] + 0.0410756761757193 * v[54] + + v[55]; + y[302] = -0.0633280090137518 * v[46] + 0.00602400000000009 * v[43] + 0.0410756761757193 * v[49] + + v[48]; + y[304] = -0.0631700090137519 * v[47] + -0.00523599999999991 * v[31] + 0.0382746761757193 * v[50] + + v[51]; + y[305] = -0.0631700090137519 * v[52] + -0.00523599999999991 * v[53] + 0.0382746761757193 * v[54] + + v[55]; + y[306] = -0.0631700090137519 * v[46] + -0.00523599999999991 * v[43] + 0.0382746761757193 * v[49] + + v[48]; + y[308] = -0.0623180090137519 * v[47] + -0.00742699999999991 * v[31] + 0.0248916761757193 * v[50] + + v[51]; + y[309] = -0.0623180090137519 * v[52] + -0.00742699999999991 * v[53] + 0.0248916761757193 * v[54] + + v[55]; + y[310] = -0.0623180090137519 * v[46] + -0.00742699999999991 * v[43] + 0.0248916761757193 * v[49] + + v[48]; + y[312] = -0.0625350090137518 * v[47] + 0.00733000000000009 * v[31] + 0.0278586761757193 * v[50] + + v[51]; + y[313] = -0.0625350090137518 * v[52] + 0.00733000000000009 * v[53] + 0.0278586761757193 * v[54] + + v[55]; + y[314] = -0.0625350090137518 * v[46] + 0.00733000000000009 * v[43] + 0.0278586761757193 * v[49] + + v[48]; + y[320] = -0.000288299517706037 * v[2] + -0.00873530749231577 * v[4]; + y[321] = -0.000288299517706037 * v[1] + -0.00873530749231577 * v[3]; + y[324] = -0.303314477205276 * v[7] + 3.42804924002849e-06 * v[10] + 0.168922066688538 * v[11]; + y[325] = -0.303314477205276 * v[6] + 3.42804924002849e-06 * v[9] + 0.168922066688538 * v[8]; + y[326] = 0.1807 + -0.303314477205276 * v[5] + -3.46465053732079e-11 + 3.42804924002849e-06 * v[0]; + y[328] = -0.284153372049332 * v[14] + 0.000178343747393228 * v[16] + 0.0534070208668709 * v[11] + + v[17]; + y[329] = + -0.284153372049332 * v[18] + 0.000178343747393228 * v[19] + 0.0534070208668709 * v[8] + v[20]; + y[330] = + -0.284153372049332 * v[13] + -1.09539663568219e-11 + 0.000178343747393228 * v[15] + v[12]; + y[332] = -3.24659049510956e-06 * v[23] + -0.00883310846984386 * v[25] + + -0.0100402645766735 * v[11] + v[26]; + y[333] = -3.24659049510956e-06 * v[27] + -0.00883310846984386 * v[28] + + -0.0100402645766735 * v[8] + v[29]; + y[334] = + -3.24659049510956e-06 * v[22] + 2.05929330266566e-12 + -0.00883310846984386 * v[24] + v[21]; + y[336] = -0.000313147320412099 * v[33] + 0.00790893100202084 * v[36] + + -0.00259667658247054 * v[37] + v[38]; + y[337] = -0.000313147320412099 * v[39] + 0.00790893100202084 * v[40] + + -0.00259667658247054 * v[41] + v[42]; + y[338] = -0.000313147320412099 * v[32] + 0.00790893100202084 * v[35] + + -0.00259667658247054 * v[34] + v[30]; + y[340] = -0.000175642926478758 * v[47] + -0.000741446681786329 * v[31] + + -0.0244805328547955 * v[50] + v[51]; + y[341] = -0.000175642926478758 * v[52] + -0.000741446681786329 * v[53] + + -0.0244805328547955 * v[54] + v[55]; + y[342] = -0.000175642926478758 * v[46] + -0.000741446681786329 * v[43] + + -0.0244805328547955 * v[49] + v[48]; + y[344] = 0.000641186255961657 * v[47] + 0.000305214809486642 * v[31] + + 0.00517970696091652 * v[50] + v[51]; + y[345] = 0.000641186255961657 * v[52] + 0.000305214809486642 * v[53] + + 0.00517970696091652 * v[54] + v[55]; + y[346] = 0.000641186255961657 * v[46] + 0.000305214809486642 * v[43] + + 0.00517970696091652 * v[49] + v[48]; + y[348] = 0.0288996081799269 * v[47] + -8.60016298247501e-05 * v[31] + 0.053745910525322 * v[50] + + v[51]; + y[349] = 0.0288996081799269 * v[52] + -8.60016298247501e-05 * v[53] + 0.053745910525322 * v[54] + + v[55]; + y[350] = 0.0288996081799269 * v[46] + -8.60016298247501e-05 * v[43] + 0.053745910525322 * v[49] + + v[48]; + y[352] = 0.0535754598677158 * v[47] + -0.000619045924395323 * v[31] + 0.0924018174409866 * v[50] + + v[51]; + y[353] = 0.0535754598677158 * v[52] + -0.000619045924395323 * v[53] + 0.0924018174409866 * v[54] + + v[55]; + y[354] = 0.0535754598677158 * v[46] + -0.000619045924395323 * v[43] + 0.0924018174409866 * v[49] + + v[48]; + y[356] = + 0.046760305762291 * v[47] + 1.03828736191616e-17 * v[31] + 0.0290684439241886 * v[50] + v[51]; + y[357] = + 0.046760305762291 * v[52] + 1.03828736191616e-17 * v[53] + 0.0290684439241886 * v[54] + v[55]; + y[358] = + 0.046760305762291 * v[46] + 1.03828736191616e-17 * v[43] + 0.0290684439241886 * v[49] + v[48]; + y[360] = + 0.0636855289340019 * v[47] + 0.00144436443224549 * v[31] + 0.0475660935044289 * v[50] + v[51]; + y[361] = + 0.0636855289340019 * v[52] + 0.00144436443224549 * v[53] + 0.0475660935044289 * v[54] + v[55]; + y[362] = + 0.0636855289340019 * v[46] + 0.00144436443224549 * v[43] + 0.0475660935044289 * v[49] + v[48]; + y[364] = -0.0288996081799269 * v[47] + 8.60016298247501e-05 * v[31] + 0.053745910525322 * v[50] + + v[51]; + y[365] = -0.0288996081799269 * v[52] + 8.60016298247501e-05 * v[53] + 0.053745910525322 * v[54] + + v[55]; + y[366] = -0.0288996081799269 * v[46] + 8.60016298247501e-05 * v[43] + 0.053745910525322 * v[49] + + v[48]; + y[368] = -0.0530961975455284 * v[47] + 0.000619045924395323 * v[31] + 0.0927621871232986 * v[50] + + v[51]; + y[369] = -0.0530961975455284 * v[52] + 0.000619045924395323 * v[53] + 0.0927621871232986 * v[54] + + v[55]; + y[370] = -0.0530961975455284 * v[46] + 0.000619045924395323 * v[43] + 0.0927621871232986 * v[49] + + v[48]; + y[372] = -0.046760305762291 * v[47] + 4.18288129672998e-17 * v[31] + 0.0290684439241886 * v[50] + + v[51]; + y[373] = -0.046760305762291 * v[52] + 4.18288129672998e-17 * v[53] + 0.0290684439241886 * v[54] + + v[55]; + y[374] = -0.046760305762291 * v[46] + 4.18288129672998e-17 * v[43] + 0.0290684439241886 * v[49] + + v[48]; + y[376] = -0.0637040734291077 * v[47] + -0.00144436443224549 * v[31] + 0.0478986985981464 * v[50] + + v[51]; + y[377] = -0.0637040734291077 * v[52] + -0.00144436443224549 * v[53] + 0.0478986985981464 * v[54] + + v[55]; + y[378] = -0.0637040734291077 * v[46] + -0.00144436443224549 * v[43] + 0.0478986985981464 * v[49] + + v[48]; + y[380] = v[51] + 8.21565038222616e-18 * v[47] + 1.82424084332359e-33 * v[31] + -0.037 * v[50]; + y[381] = v[55] + 8.21565038222616e-18 * v[52] + 1.82424084332359e-33 * v[53] + -0.037 * v[54]; + y[382] = v[48] + 8.21565038222616e-18 * v[46] + 1.82424084332359e-33 * v[43] + -0.037 * v[49]; + y[383] = v[47] + 2.22044604925031e-16 * v[31] + 2.22044604925031e-16 * v[50]; + y[384] = v[52] + 2.22044604925031e-16 * v[53] + 2.22044604925031e-16 * v[54]; + y[385] = v[46] + 2.22044604925031e-16 * v[43] + 2.22044604925031e-16 * v[49]; + y[386] = -2.22044604925031e-16 * v[47] + v[31]; + y[387] = -2.22044604925031e-16 * v[52] + v[53]; + y[388] = -2.22044604925031e-16 * v[46] + v[43]; + y[389] = -2.22044604925031e-16 * v[47] + -4.93038065763132e-32 * v[31] + v[50]; + y[390] = -2.22044604925031e-16 * v[52] + -4.93038065763132e-32 * v[53] + v[54]; + y[391] = -2.22044604925031e-16 * v[46] + -4.93038065763132e-32 * v[43] + v[49]; + // dependent variables without operations + y[0] = -6.44109725952151e-07; + y[1] = -1.16391277313232e-05; + y[2] = 0.0496443499687567; + y[3] = 0.107271999120712; + y[6] = 0.179449425041044; + y[7] = 0.122019000351429; + y[11] = 0.100000001490116; + y[15] = 0.100000001490116; + y[19] = 0.100000001490116; + y[23] = 0.100000001490116; + y[27] = 0.100000001490116; + y[31] = 0.100000001490116; + y[35] = 0.100000001490116; + y[39] = 0.100000001490116; + y[43] = 0.0770189985632896; + y[47] = 0.0817079991102219; + y[51] = 0.0797109976410866; + y[55] = 0.0832929983735085; + y[59] = 0.0817840024828911; + y[63] = 0.0878330022096634; + y[67] = 0.0887719988822937; + y[71] = 0.0726329982280731; + y[75] = 0.079586997628212; + y[79] = 0.0813139975070953; + y[83] = 0.0526160001754761; + y[87] = 0.0545889995992184; + y[91] = 0.045889999717474; + y[95] = 0.012109000235796; + y[99] = 0.0106359999626875; + y[103] = 0.0114740002900362; + y[107] = 0.0123990001156926; + y[111] = 0.0122360000386834; + y[115] = 0.0108470004051924; + y[119] = 0.0130009995773435; + y[123] = 0.0118150003254414; + y[127] = 0.012601999565959; + y[131] = 0.0133750000968575; + y[135] = 0.0122199999168515; + y[139] = 0.011315000243485; + y[143] = 0.0134969996288419; + y[147] = 0.0131989996880293; + y[151] = 0.0117070004343987; + y[155] = 0.012431999668479; + y[159] = 0.00987400021404028; + y[163] = 0.0122570004314184; + y[167] = 0.00966900028288364; + y[171] = 0.00865000020712614; + y[175] = 0.00920400023460388; + y[179] = 0.0123479999601841; + y[183] = 0.00932999979704618; + y[187] = 0.0117380004376173; + y[191] = 0.00990500021725893; + y[195] = 0.0116910003125668; + y[199] = 0.00942999962717295; + y[203] = 0.0107370000332594; + y[207] = 0.012109000235796; + y[211] = 0.0106359999626875; + y[215] = 0.0114740002900362; + y[219] = 0.0123990001156926; + y[223] = 0.0122360000386834; + y[227] = 0.0108470004051924; + y[231] = 0.0130009995773435; + y[235] = 0.0118150003254414; + y[239] = 0.012601999565959; + y[243] = 0.0133750000968575; + y[247] = 0.0122199999168515; + y[251] = 0.011315000243485; + y[255] = 0.0134969996288419; + y[259] = 0.0131989996880293; + y[263] = 0.0117070004343987; + y[267] = 0.012431999668479; + y[271] = 0.00987400021404028; + y[275] = 0.0122570004314184; + y[279] = 0.00966900028288364; + y[283] = 0.00865000020712614; + y[287] = 0.00920400023460388; + y[291] = 0.0123479999601841; + y[295] = 0.00932999979704618; + y[299] = 0.0117380004376173; + y[303] = 0.00990500021725893; + y[307] = 0.0116910003125668; + y[311] = 0.00942999962717295; + y[315] = 0.0107370000332594; + y[316] = -6.44109718450636e-07; + y[317] = -1.1639127478702e-05; + y[318] = 0.0496443510055542; + y[319] = 0.107271999120712; + y[322] = 0.179449425052665; + y[323] = 0.122019000351429; + y[327] = 0.403739362955093; + y[331] = 0.355899393558502; + y[335] = 0.079586997628212; + y[339] = 0.0813139975070953; + y[343] = 0.0526160001754761; + y[347] = 0.063862532377243; + y[351] = 0.0394577123224735; + y[355] = 0.0347281917929649; + y[359] = 0.0258710160851479; + y[363] = 0.0332425236701965; + y[367] = 0.0394577123224735; + y[371] = 0.0347281917929649; + y[375] = 0.0258710160851479; + y[379] = 0.0332425236701965; + + // + // environment vs. robot collisions + // + + // robotiq_85_right_finger_link + if (sphere_environment_in_collision(environment, y[376], y[377], y[378], y[379])) + { + if (sphere_environment_in_collision(environment, y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_right_knuckle_link + if (sphere_environment_in_collision(environment, y[372], y[373], y[374], y[375])) + { + if (sphere_environment_in_collision(environment, y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_right_finger_tip_link + if (sphere_environment_in_collision(environment, y[368], y[369], y[370], y[371])) + { + if (sphere_environment_in_collision(environment, y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_right_inner_knuckle_link + if (sphere_environment_in_collision(environment, y[364], y[365], y[366], y[367])) + { + if (sphere_environment_in_collision(environment, y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_finger_link + if (sphere_environment_in_collision(environment, y[360], y[361], y[362], y[363])) + { + if (sphere_environment_in_collision(environment, y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_knuckle_link + if (sphere_environment_in_collision(environment, y[356], y[357], y[358], y[359])) + { + if (sphere_environment_in_collision(environment, y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_finger_tip_link + if (sphere_environment_in_collision(environment, y[352], y[353], y[354], y[355])) + { + if (sphere_environment_in_collision(environment, y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_left_inner_knuckle_link + if (sphere_environment_in_collision(environment, y[348], y[349], y[350], y[351])) + { + if (sphere_environment_in_collision(environment, y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // robotiq_85_base_link + if (sphere_environment_in_collision(environment, y[344], y[345], y[346], y[347])) + { + if (sphere_environment_in_collision(environment, y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // wrist_3_link + if (sphere_environment_in_collision(environment, y[340], y[341], y[342], y[343])) + { + if (sphere_environment_in_collision(environment, y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // wrist_2_link + if (sphere_environment_in_collision(environment, y[336], y[337], y[338], y[339])) + { + if (sphere_environment_in_collision(environment, y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // wrist_1_link + if (sphere_environment_in_collision(environment, y[332], y[333], y[334], y[335])) + { + if (sphere_environment_in_collision(environment, y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // forearm_link + if (sphere_environment_in_collision(environment, y[328], y[329], y[330], y[331])) + { + if (sphere_environment_in_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // upper_arm_link + if (sphere_environment_in_collision(environment, y[324], y[325], y[326], y[327])) + { + if (sphere_environment_in_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + + if (sphere_environment_in_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // shoulder_link + if (sphere_environment_in_collision(environment, y[320], y[321], y[322], y[323])) + { + if (sphere_environment_in_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + } + + // + // environment vs. robot collisions + // + + // base_link_inertia + if (sphere_environment_in_collision(environment, y[316], y[317], y[318], y[319])) + { + if (sphere_environment_in_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + } + + // + // robot self-collisions + // + + // base_link_inertia vs. upper_arm_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[324], y[325], y[326], y[327])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[8], y[9], y[10], y[11])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[12], y[13], y[14], y[15])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[16], y[17], y[18], y[19])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[20], y[21], y[22], y[23])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[24], y[25], y[26], y[27])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[28], y[29], y[30], y[31])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[32], y[33], y[34], y[35])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[36], y[37], y[38], y[39])) + { + return false; + } + } + + // base_link_inertia vs. forearm_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[328], y[329], y[330], y[331])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[68], y[69], y[70], y[71])) + { + return false; + } + } + + // base_link_inertia vs. wrist_1_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[332], y[333], y[334], y[335])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // base_link_inertia vs. wrist_2_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // base_link_inertia vs. wrist_3_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // base_link_inertia vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[316], y[317], y[318], y[319], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[0], y[1], y[2], y[3], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // shoulder_link vs. forearm_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[328], y[329], y[330], y[331])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[40], y[41], y[42], y[43])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[44], y[45], y[46], y[47])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[48], y[49], y[50], y[51])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[52], y[53], y[54], y[55])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[56], y[57], y[58], y[59])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[60], y[61], y[62], y[63])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[64], y[65], y[66], y[67])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[68], y[69], y[70], y[71])) + { + return false; + } + } + + // shoulder_link vs. wrist_1_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[332], y[333], y[334], y[335])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // shoulder_link vs. wrist_2_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // shoulder_link vs. wrist_3_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // shoulder_link vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[320], y[321], y[322], y[323], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[4], y[5], y[6], y[7], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // upper_arm_link vs. wrist_1_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[332], y[333], y[334], y[335])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[72], y[73], y[74], y[75])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[72], y[73], y[74], y[75])) + { + return false; + } + } + + // upper_arm_link vs. wrist_2_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // upper_arm_link vs. wrist_3_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // upper_arm_link vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[324], y[325], y[326], y[327], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[8], y[9], y[10], y[11], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[12], y[13], y[14], y[15], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[16], y[17], y[18], y[19], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[20], y[21], y[22], y[23], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[24], y[25], y[26], y[27], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[28], y[29], y[30], y[31], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[32], y[33], y[34], y[35], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[36], y[37], y[38], y[39], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // forearm_link vs. wrist_2_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[336], y[337], y[338], y[339])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[76], y[77], y[78], y[79])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[76], y[77], y[78], y[79])) + { + return false; + } + } + + // forearm_link vs. wrist_3_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[340], y[341], y[342], y[343])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[80], y[81], y[82], y[83])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[80], y[81], y[82], y[83])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_base_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[344], y[345], y[346], y[347])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[88], y[89], y[90], y[91])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[84], y[85], y[86], y[87])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[88], y[89], y[90], y[91])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_inner_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[348], y[349], y[350], y[351])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[120], y[121], y[122], y[123])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[92], y[93], y[94], y[95])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[96], y[97], y[98], y[99])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[100], y[101], y[102], y[103])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[104], y[105], y[106], y[107])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[108], y[109], y[110], y[111])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[112], y[113], y[114], y[115])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[116], y[117], y[118], y[119])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[120], y[121], y[122], y[123])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_finger_tip_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[352], y[353], y[354], y[355])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[148], y[149], y[150], y[151])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[124], y[125], y[126], y[127])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[128], y[129], y[130], y[131])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[132], y[133], y[134], y[135])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[136], y[137], y[138], y[139])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[140], y[141], y[142], y[143])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[144], y[145], y[146], y[147])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[148], y[149], y[150], y[151])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[356], y[357], y[358], y[359])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[168], y[169], y[170], y[171])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[152], y[153], y[154], y[155])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[156], y[157], y[158], y[159])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[160], y[161], y[162], y[163])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[164], y[165], y[166], y[167])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[168], y[169], y[170], y[171])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_left_finger_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[360], y[361], y[362], y[363])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[200], y[201], y[202], y[203])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[172], y[173], y[174], y[175])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[176], y[177], y[178], y[179])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[180], y[181], y[182], y[183])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[184], y[185], y[186], y[187])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[188], y[189], y[190], y[191])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[192], y[193], y[194], y[195])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[196], y[197], y[198], y[199])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[200], y[201], y[202], y[203])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_inner_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[364], y[365], y[366], y[367])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[232], y[233], y[234], y[235])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[204], y[205], y[206], y[207])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[208], y[209], y[210], y[211])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[212], y[213], y[214], y[215])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[216], y[217], y[218], y[219])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[220], y[221], y[222], y[223])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[224], y[225], y[226], y[227])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[228], y[229], y[230], y[231])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[232], y[233], y[234], y[235])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_finger_tip_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[368], y[369], y[370], y[371])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[260], y[261], y[262], y[263])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[236], y[237], y[238], y[239])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[240], y[241], y[242], y[243])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[244], y[245], y[246], y[247])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[248], y[249], y[250], y[251])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[252], y[253], y[254], y[255])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[256], y[257], y[258], y[259])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[260], y[261], y[262], y[263])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_knuckle_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[372], y[373], y[374], y[375])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[280], y[281], y[282], y[283])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[264], y[265], y[266], y[267])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[268], y[269], y[270], y[271])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[272], y[273], y[274], y[275])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[276], y[277], y[278], y[279])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[280], y[281], y[282], y[283])) + { + return false; + } + } + + // forearm_link vs. robotiq_85_right_finger_link + if (sphere_sphere_self_collision( + y[328], y[329], y[330], y[331], y[376], y[377], y[378], y[379])) + { + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[40], y[41], y[42], y[43], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[44], y[45], y[46], y[47], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[48], y[49], y[50], y[51], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[52], y[53], y[54], y[55], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[56], y[57], y[58], y[59], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[60], y[61], y[62], y[63], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[64], y[65], y[66], y[67], y[312], y[313], y[314], y[315])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[284], y[285], y[286], y[287])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[288], y[289], y[290], y[291])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[292], y[293], y[294], y[295])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[296], y[297], y[298], y[299])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[300], y[301], y[302], y[303])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[304], y[305], y[306], y[307])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[308], y[309], y[310], y[311])) + { + return false; + } + + if (sphere_sphere_self_collision( + y[68], y[69], y[70], y[71], y[312], y[313], y[314], y[315])) + { + return false; + } + } + + // attaching at ["robotiq_85_base_link"] + // provide the eef pose of all end effectors. + set_attachment_pose(environment, to_isometries<1>(&y[380])); + + // + // attachment vs. environment collisions + // + if (attachment_environment_collision(environment)) + { + return false; + } + + // + // attachment vs. robot collisions + // + + // Attachment vs. base_link_inertia + if (attachment_sphere_collision(environment, y[316], y[317], y[318], y[319])) + { + if (attachment_sphere_collision(environment, y[0], y[1], y[2], y[3])) + { + return false; + } + } + + // Attachment vs. shoulder_link + if (attachment_sphere_collision(environment, y[320], y[321], y[322], y[323])) + { + if (attachment_sphere_collision(environment, y[4], y[5], y[6], y[7])) + { + return false; + } + } + + // Attachment vs. upper_arm_link + if (attachment_sphere_collision(environment, y[324], y[325], y[326], y[327])) + { + if (attachment_sphere_collision(environment, y[8], y[9], y[10], y[11])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[12], y[13], y[14], y[15])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[16], y[17], y[18], y[19])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[20], y[21], y[22], y[23])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[24], y[25], y[26], y[27])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[28], y[29], y[30], y[31])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[32], y[33], y[34], y[35])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[36], y[37], y[38], y[39])) + { + return false; + } + } + + // Attachment vs. forearm_link + if (attachment_sphere_collision(environment, y[328], y[329], y[330], y[331])) + { + if (attachment_sphere_collision(environment, y[40], y[41], y[42], y[43])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[44], y[45], y[46], y[47])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[48], y[49], y[50], y[51])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[52], y[53], y[54], y[55])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[56], y[57], y[58], y[59])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[60], y[61], y[62], y[63])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[64], y[65], y[66], y[67])) + { + return false; + } + + if (attachment_sphere_collision(environment, y[68], y[69], y[70], y[71])) + { + return false; + } + } + + return true; + } + + inline static auto eefk(const std::array &x) noexcept -> std::array + { + std::array v; + std::array y; + + v[0] = cos(x[0]); + v[1] = sin(x[0]); + v[2] = -1. * v[0] + -1.22464679914735e-16 * v[1]; + v[3] = cos(x[1]); + v[4] = -v[1]; + v[5] = -1. * v[4] + -1.22464679914735e-16 * v[0]; + v[6] = sin(x[1]); + v[7] = -2.05103489747671e-10 * v[6]; + v[8] = v[2] * v[3] + v[5] * v[7]; + v[9] = cos(x[2]); + v[10] = -v[6]; + v[11] = -2.05103489747671e-10 * v[3]; + v[2] = v[2] * v[10] + v[5] * v[11]; + v[12] = sin(x[2]); + v[13] = v[8] * v[9] + v[2] * v[12]; + v[5] = -1. * v[5]; + v[14] = sin(x[3]); + v[15] = -v[14]; + v[16] = -v[12]; + v[2] = v[8] * v[16] + v[2] * v[9]; + v[17] = cos(x[3]); + v[18] = v[13] * v[15] + v[2] * v[17]; + v[2] = v[13] * v[17] + v[2] * v[14]; + v[19] = sin(x[4]); + v[20] = -v[19]; + v[21] = cos(x[4]); + v[22] = -2.05103489747671e-10 * v[21]; + v[23] = v[2] * v[20] + v[18] * v[22] + v[5] * v[21]; + v[24] = -1. * v[18] + -2.05103489747671e-10 * v[5]; + v[25] = -2.05103489747671e-10 * v[19]; + v[2] = v[2] * v[21] + v[18] * v[25] + v[5] * v[19]; + v[26] = cos(x[5]); + v[27] = sin(x[5]); + v[28] = v[26] + -1.22464679939853e-16 * v[27]; + v[29] = -1.22464679914735e-16 * v[26] + -2.05103489747671e-10 * v[27]; + v[30] = -1.22464679914735e-16 * v[26] + -1. * v[27]; + v[31] = v[2] * v[28] + v[23] * v[29] + v[24] * v[30]; + v[27] = -v[27]; + v[32] = v[27] + -1.22464679939853e-16 * v[26]; + v[33] = -1.22464679914735e-16 * v[27] + -2.05103489747671e-10 * v[26]; + v[27] = -1.22464679914735e-16 * v[27] + -1. * v[26]; + v[26] = v[2] * v[32] + v[23] * v[33] + v[24] * v[27]; + v[2] = 1.22464679889617e-16 * v[2] + v[23] + -2.05103489747671e-10 * v[24]; + y[0] = -0.6127 * v[8] + -0.57155 * v[13] + 0.17415 * v[5] + -0.11985 * v[18] + + -2.45816459075624e-11 * v[5] + 0.11655 * v[23] + -2.39048045934618e-11 * v[24] + + 8.21565038222616e-18 * v[31] + 1.82424084332359e-33 * v[26] + -0.037 * v[2]; + v[1] = 1.22464679914735e-16 * v[0] + -1. * v[1]; + v[4] = 1.22464679914735e-16 * v[4] + -1. * v[0]; + v[7] = v[1] * v[3] + v[4] * v[7]; + v[1] = v[1] * v[10] + v[4] * v[11]; + v[11] = v[7] * v[9] + v[1] * v[12]; + v[4] = -1. * v[4]; + v[1] = v[7] * v[16] + v[1] * v[9]; + v[10] = v[11] * v[15] + v[1] * v[17]; + v[1] = v[11] * v[17] + v[1] * v[14]; + v[0] = v[1] * v[20] + v[10] * v[22] + v[4] * v[21]; + v[24] = -1. * v[10] + -2.05103489747671e-10 * v[4]; + v[1] = v[1] * v[21] + v[10] * v[25] + v[4] * v[19]; + v[23] = v[1] * v[28] + v[0] * v[29] + v[24] * v[30]; + v[18] = v[1] * v[32] + v[0] * v[33] + v[24] * v[27]; + v[1] = 1.22464679889617e-16 * v[1] + v[0] + -2.05103489747671e-10 * v[24]; + y[1] = -0.6127 * v[7] + -0.57155 * v[11] + 0.17415 * v[4] + -0.11985 * v[10] + + -2.45816459075624e-11 * v[4] + 0.11655 * v[0] + -2.39048045934618e-11 * v[24] + + 8.21565038222616e-18 * v[23] + 1.82424084332359e-33 * v[18] + -0.037 * v[1]; + v[12] = v[6] * v[9] + v[3] * v[12]; + v[16] = v[6] * v[16] + v[3] * v[9]; + v[15] = v[12] * v[15] + v[16] * v[17]; + v[16] = v[12] * v[17] + v[16] * v[14]; + v[22] = v[16] * v[20] + v[15] * v[22] + -2.05103489747671e-10 * v[21]; + v[20] = 4.2067441506673e-20 + -1. * v[15]; + v[16] = v[16] * v[21] + v[15] * v[25] + -2.05103489747671e-10 * v[19]; + v[30] = v[16] * v[28] + v[22] * v[29] + v[20] * v[30]; + v[27] = v[16] * v[32] + v[22] * v[33] + v[20] * v[27]; + v[16] = 1.22464679889617e-16 * v[16] + v[22] + -2.05103489747671e-10 * v[20]; + y[2] = 0.1807 + -0.6127 * v[6] + -3.57187727395569e-11 + -0.57155 * v[12] + 5.04178135938262e-21 + + -0.11985 * v[15] + 0.11655 * v[22] + -2.39048045934618e-11 * v[20] + + 8.21565038222616e-18 * v[30] + 1.82424084332359e-33 * v[27] + -0.037 * v[16]; + y[3] = v[31] + 2.22044604925031e-16 * v[26] + 2.22044604925031e-16 * v[2]; + y[4] = v[23] + 2.22044604925031e-16 * v[18] + 2.22044604925031e-16 * v[1]; + y[5] = v[30] + 2.22044604925031e-16 * v[27] + 2.22044604925031e-16 * v[16]; + y[6] = -2.22044604925031e-16 * v[31] + v[26]; + y[7] = -2.22044604925031e-16 * v[23] + v[18]; + y[8] = -2.22044604925031e-16 * v[30] + v[27]; + y[9] = -2.22044604925031e-16 * v[31] + -4.93038065763132e-32 * v[26] + v[2]; + y[10] = -2.22044604925031e-16 * v[23] + -4.93038065763132e-32 * v[18] + v[1]; + y[11] = -2.22044604925031e-16 * v[30] + -4.93038065763132e-32 * v[27] + v[16]; + + return to_isometries<1>(y.data()); + } + }; +} // namespace vamp::robots + +// NOLINTEND(*-magic-numbers) diff --git a/src/impl/vamp/robots/ur5.hh b/src/impl/vamp/robots/ur5.hh index 5cc815c7..eee9ef19 100644 --- a/src/impl/vamp/robots/ur5.hh +++ b/src/impl/vamp/robots/ur5.hh @@ -24,7 +24,7 @@ namespace vamp::robots "wrist_1_joint", "wrist_2_joint", "wrist_3_joint"}; - static constexpr char *end_effector = "robotiq_85_base_link"; + static constexpr std::array end_effectors = {"robotiq_85_base_link"}; using Configuration = FloatVector; using ConfigurationArray = std::array; @@ -853,65 +853,50 @@ namespace vamp::robots output.first.emplace_back( sphere_environment_get_collisions(environment, y[96], y[97], y[98], y[99])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[100], y[101], y[102], y[103])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[100], y[101], y[102], y[103])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[104], y[105], y[106], y[107])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[104], y[105], y[106], y[107])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[108], y[109], y[110], y[111])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[108], y[109], y[110], y[111])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[112], y[113], y[114], y[115])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[112], y[113], y[114], y[115])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[116], y[117], y[118], y[119])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[116], y[117], y[118], y[119])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[120], y[121], y[122], y[123])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[120], y[121], y[122], y[123])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[124], y[125], y[126], y[127])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[124], y[125], y[126], y[127])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[128], y[129], y[130], y[131])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[128], y[129], y[130], y[131])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[132], y[133], y[134], y[135])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[132], y[133], y[134], y[135])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[136], y[137], y[138], y[139])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[136], y[137], y[138], y[139])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[140], y[141], y[142], y[143])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[140], y[141], y[142], y[143])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[144], y[145], y[146], y[147])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[144], y[145], y[146], y[147])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[148], y[149], y[150], y[151])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[148], y[149], y[150], y[151])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[152], y[153], y[154], y[155])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[152], y[153], y[154], y[155])); - output.first.emplace_back( - sphere_environment_get_collisions( - environment, y[156], y[157], y[158], y[159])); + output.first.emplace_back(sphere_environment_get_collisions( + environment, y[156], y[157], y[158], y[159])); if (sphere_sphere_self_collision( y[0], y[1], y[2], y[3], y[8], y[9], y[10], y[11])) @@ -9807,8 +9792,9 @@ namespace vamp::robots } } - // attaching at robotiq_85_base_link - set_attachment_pose(environment, to_isometry(&y[228])); + // attaching at ["robotiq_85_base_link"] + // provide the eef pose of all end effectors. + set_attachment_pose(environment, to_isometries<1>(&y[228])); // // attachment vs. environment collisions @@ -9940,7 +9926,7 @@ namespace vamp::robots return true; } - inline static auto eefk(const std::array &x) noexcept -> Eigen::Isometry3f + inline static auto eefk(const std::array &x) noexcept -> std::array { std::array v; std::array y; @@ -10019,7 +10005,7 @@ namespace vamp::robots y[10] = -0.000796324663347988 * v[19] + 0.999999365865199 * v[2] + 0.000796326710733264 * v[21]; y[11] = -0.000796324663347988 * v[25] + 0.999999365865199 * v[9] + 0.000796326710733264 * v[16]; - return to_isometry(y.data()); + return to_isometries<1>(y.data()); } }; } // namespace vamp::robots diff --git a/src/impl/vamp/vector/interface.hh b/src/impl/vamp/vector/interface.hh index a67953ad..f864753f 100644 --- a/src/impl/vamp/vector/interface.hh +++ b/src/impl/vamp/vector/interface.hh @@ -251,7 +251,7 @@ namespace vamp inline constexpr auto less_than(typename S::ScalarT s) const noexcept -> D { - return greater_than(broadcast_scalar(s)); + return less_than(broadcast_scalar(s)); } template ::template check = true> diff --git a/src/impl/vamp/vector/math.hh b/src/impl/vamp/vector/math.hh index 43c95d47..7184e0c5 100644 --- a/src/impl/vamp/vector/math.hh +++ b/src/impl/vamp/vector/math.hh @@ -47,5 +47,24 @@ inline static auto to_isometry(const DataT *buf) -> Eigen::Transform +inline static auto to_isometries(const DataT *buf) -> std::array, N> +{ + std::array, N> out; + + for(size_t i=0; i < N; i++) + { + auto offset = i * 12; + const Eigen::Map> R(&buf[offset + 3]); + + out[i].translation()[0] = buf[offset + 0]; + out[i].translation()[1] = buf[offset + 1]; + out[i].translation()[2] = buf[offset + 2]; + out[i].linear() = R; + } + return out; } \ No newline at end of file diff --git a/src/vamp/__init__.pyi b/src/vamp/__init__.pyi index 47d29cf2..83b627df 100644 --- a/src/vamp/__init__.pyi +++ b/src/vamp/__init__.pyi @@ -24,6 +24,7 @@ from vamp._core import fetch as fetch from vamp._core import panda as panda from vamp._core import sphere as sphere from vamp._core import ur5 as ur5 +from vamp._core import bimanualpanda as bimanualpanda from vamp.constants import * """ This type stub file was generated by pyright. diff --git a/src/vamp/constants.py b/src/vamp/constants.py index d06e2f98..a9b74584 100644 --- a/src/vamp/constants.py +++ b/src/vamp/constants.py @@ -4,6 +4,7 @@ "sphere": 1, "ur5": 1.5, "panda": 1.0, + "bimanualpanda": 1.0, "fetch": 1.0, "baxter": 0.5, } @@ -12,12 +13,14 @@ "fetch": [0.0, 0.0, 0.4], "ur5": [0.0, 0.0, 0.91], "panda": [0.0, 0.0, 0.0], + "bimanualpanda": [0.0, 0.0, 0.0], } ROBOT_MAX_RADII = { "ur5": 1.2, "fetch": 1.5, "panda": 1.19, + "bimanualpanda": 1.19, } POINT_RADIUS = 0.0025